推荐通过包管理器安装(更便捷):
sudo apt update
sudo apt install libcximage-dev # 安装开发包
源码编译安装(需手动配置):
git clone https://github.com/cximage/cximage.git
cd cximage
mkdir build && cd build
cmake ..
make && sudo make install # 安装到系统路径
若需自定义路径,编译时指定CMAKE_INSTALL_PREFIX
。
配置环境变量(可选):
若库文件不在默认路径,需在~/.bashrc
中添加:
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
source ~/.bashrc
加载与保存图像:
#include <cximage.h>
CXImage image;
if (!image.Load("input.jpg", CXIMAGE_FORMAT_JPG)) {
std::cerr << "加载失败" << std::endl;
}
image.Save("output.png", CXIMAGE_FORMAT_PNG); // 转换格式
格式转换:
通过CXIMAGE_FORMAT_XXX
枚举指定目标格式(如CXIMAGE_FORMAT_BMP
、CXIMAGE_FORMAT_GIF
)。
图像变换:
image.Rotate(90);
(角度支持90、180、270度)image.Resample(width, height);
(保持宽高比可设height=0
)image.Selection
设置区域后调用image.Crop()
颜色与质量调整:
image.GrayScale();
image.SetJpegQuality(80);
(0-100,数值越高质量越低)#!/bin/bash
input_dir="input_folder"
output_dir="output_folder"
mkdir -p "$output_dir"
for img in "$input_dir"/*.{jpg,jpeg,png}; do
filename=$(basename "$img")
g++ -o temp_converter converter.cpp -lcximage && ./temp_converter "$img" "$output_dir/${filename%.*}_gray.jpg"
done
```(需配合C++代码实现单张图片处理逻辑)
libpng-dev
、libjpeg-dev
等基础库,否则编译可能失败。Load
/Save
返回值,避免因路径错误或权限问题导致程序崩溃。README
或docs
目录,获取完整API说明。通过以上步骤,可快速在Ubuntu系统中集成CxImage并实现基础到高级的图像处理功能。