CXImage在Linux下的使用技巧
sudo apt install build-essential libpng-dev libjpeg-dev libtiff-dev;RHEL/CentOS/Fedora系统需运行:sudo yum groupinstall "Development Tools" && sudo yum install libpng-devel libjpeg-devel libtiff-devel。这些依赖是编译CXImage的必要条件。https://github.com/cximage/cximage.git)克隆源码,进入源码目录后创建build子目录,运行cmake ..生成Makefile,再通过make编译源码,最后用sudo make install将库安装到系统默认路径(通常为/usr/local)。~/.bashrc或~/.bash_profile文件,添加export CPLUS_INCLUDE_PATH=/usr/local/include:$CPLUS_INCLUDE_PATH和export LIBRARY_PATH=/usr/local/lib:$LIBRARY_PATH,运行source ~/.bashrc使配置生效。#include "cximage.h"),编译时链接-lcximage库。核心操作包括:
CxImage image; image.Load("input.jpg", CXIMAGE_FORMAT_JPG);image.Save("output.png", CXIMAGE_FORMAT_PNG);Save方法直接转换格式(如将JPG转为PNG)。Resample方法按指定尺寸缩放(如image.Resample(800, 600),保持宽高比则将高度设为0);Rotate方法顺时针旋转指定角度(如image.Rotate(90)旋转90度);Crop方法裁剪指定矩形区域(如image.Crop(0, 0, 200, 200)裁剪左上角200x200像素区域);GrayScale(灰度化)、GaussianBlur(3)(3x3高斯模糊)、Sharpen(锐化)、AdjustBrightness(20)(增加亮度20)、AdjustContrast(1.2)(增加对比度1.2倍)等方法。CXImage提供命令行工具cximage,支持快速处理图像,常用参数如下:
-i/--input指定输入文件,-o/--output指定输出文件,-f/--format指定输出格式(如png、jpg);-s/--scale=WIDTHxHEIGHT缩放图像,-c/--crop=LEFTxTOPxRIGHTxBOTTOM裁剪图像,-r/--rotate=DEGREES旋转图像,-m/--mirror水平翻转图像,-v/--invert反转颜色;-b/--brightness=VALUE调整亮度(-100~100),-c/--contrast=VALUE调整对比度(-100~100),-g/--gamma=VALUE调整伽马值(0.1~10)。cximage -i input.jpg -o output.png -f png;cximage -i input.jpg -o output.jpg -s 800x600;cximage -i input.jpg -o output.jpg -c 0x0x200x200;cximage -i input.jpg -o output.jpg -r 90;cximage -i input.jpg -o output.jpg -m。delete释放CxImage对象占用的内存,避免内存泄漏;