一、安装CXImage库
sudo apt update && sudo apt install build-essential libpng-dev libjpeg-dev libtiff-dev
;CentOS/RHEL系统需运行:sudo yum groupinstall "Development Tools" && sudo yum install libpng-devel libjpeg-turbo-devel
。这些依赖是CXImage编译和运行的基础。git clone https://github.com/antiresware/cximage.git
),或从官方网站下载稳定版源码包。build
目录,执行cmake ..
生成Makefile,再通过make
编译,最后用sudo make install
将库文件安装到系统目录(默认路径为/usr/local/lib
和/usr/local/include
)。~/.bashrc
或~/.zshrc
中:export CPLUS_INCLUDE_PATH=/usr/local/include:$CPLUS_INCLUDE_PATH
(头文件路径)、export LIBRARY_PATH=/usr/local/lib:$LIBRARY_PATH
(库文件路径),然后运行source ~/.bashrc
使配置生效。二、项目集成配置
CMakeLists.txt
文件,添加以下内容以关联CXImage:cmake_minimum_required(VERSION 3.10)
project(YourProjectName)
set(CMAKE_CXX_STANDARD 11)
include_directories(/usr/local/include) # CXImage头文件路径
link_directories(/usr/local/lib) # CXImage库文件路径
target_link_libraries(YourTargetName cximage libjpeg libpng libtiff) # 链接CXImage及依赖库
替换YourProjectName
和YourTargetName
为实际项目名称。mkdir build && cd build && cmake .. && make
,即可生成可执行文件。三、基本图像操作
CxImage
类的Load
和Save
方法实现格式转换。示例代码:#include "cximage.h"
int main() {
CxImage image;
if (!image.Load("input.jpg", CXIMAGE_FORMAT_JPG)) {
std::cerr << "加载图像失败!" << std::endl;
return -1;
}
if (!image.Save("output.png", CXIMAGE_FORMAT_PNG)) {
std::cerr << "保存图像失败!" << std::endl;
return -1;
}
return 0;
}
编译时需链接CXImage库:g++ your_program.cpp -o your_program -lcximage
。Resample
方法指定目标宽度和高度(第二个参数为0时保持比例),如image.Resample(800, 0)
将图像宽度缩至800像素,高度自动调整。Rotate
方法指定旋转角度(顺时针),如image.Rotate(90)
将图像顺时针旋转90度。GrayScale()
)、高斯模糊(GaussianBlur(3)
,3为模糊半径)、锐化(Sharpen()
)、亮度调整(AdjustBrightness(20)
,增加20亮度)、对比度调整(AdjustContrast(1.2)
,提高20%对比度)、饱和度调整(AdjustSaturation(0.8)
,降低20%饱和度)。四、常见问题解决
libjpeg
、libpng
),编译时需添加对应链接选项(如-ljpeg -lpng
)。libcximage.so not found
,需将CXImage库路径添加到LD_LIBRARY_PATH
环境变量(如export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
),或修改/etc/ld.so.conf
后运行sudo ldconfig
更新缓存。