cxImage依賴build-essential(編譯工具鏈)、libpng-dev(PNG格式支持)、libjpeg-dev(JPEG格式支持)、libtiff-dev(TIFF格式支持)、libgif-dev(GIF格式支持)等庫。在終端執行以下命令安裝:
sudo apt update
sudo apt install build-essential libpng-dev libjpeg-dev libtiff-dev libgif-dev libwebp-dev
通過Git從cxImage的GitHub倉庫克隆最新穩定版源碼(以v1.0.0為例):
git clone https://github.com/cximage/cximage.git
cd cximage
使用CMake生成Makefile并編譯安裝:
mkdir build && cd build
cmake .. # 配置編譯選項(默認安裝到/usr/local)
make # 編譯源碼
sudo make install # 安裝到系統目錄
若需全局使用cxImage,需將庫路徑添加到環境變量。編輯~/.bashrc文件:
echo 'export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH' >> ~/.bashrc
echo 'export CPLUS_INCLUDE_PATH=/usr/local/include:$CPLUS_INCLUDE_PATH' >> ~/.bashrc
source ~/.bashrc # 使配置生效
創建測試程序test_cximage.cpp,內容如下:
#include <iostream>
#include "cximage.h"
int main() {
CxImage image;
if (image.Load("input.jpg", CXIMAGE_FORMAT_JPG)) {
std::cout << "Image loaded successfully!" << std::endl;
image.Save("output.png", CXIMAGE_FORMAT_PNG);
std::cout << "Image saved as output.png" << std::endl;
} else {
std::cerr << "Failed to load image." << std::endl;
return -1;
}
return 0;
}
編譯并運行:
g++ -o test_cximage test_cximage.cpp -lcximage
./test_cximage
若輸出“Image loaded successfully!”則表示安裝成功。
在C++項目中引入cxImage主頭文件:
#include "cximage.h"
使用CxImage類的Load和Save方法實現格式轉換(如BMP轉JPG):
CxImage image;
if (!image.Load("input.bmp", CXIMAGE_FORMAT_BMP)) {
std::cerr << "Failed to load BMP image." << std::endl;
return -1;
}
image.Save("output.jpg", CXIMAGE_FORMAT_JPG); // 保存為JPG格式
Resize方法將圖像縮放至指定尺寸:image.Resize(800, 600); // 調整為800x600像素
Rotate方法順時針旋轉指定角度(如90度):image.Rotate(90); // 順時針旋轉90度
Crop方法截取指定區域(左上角坐標+寬高):image.Crop(100, 100, 300, 300); // 裁剪(100,100)到(300,300)的區域
image.GrayScale();image.GaussianBlur(3);(半徑為3)image.EdgeDetect();通過Create方法創建空白圖像(如800x600像素、24位真彩色):
CxImage newImage;
if (!newImage.Create(800, 600, 24, CXIMAGE_FORMAT_JPG)) {
std::cerr << "Failed to create new image." << std::endl;
return -1;
}
newImage.Save("new_image.jpg"); // 保存新圖像
通過SetPixel方法修改指定位置的像素顏色(RGB格式):
image.SetPixel(10, 10, 255, 0, 0); // 將(10,10)位置設置為紅色
libwebp),需安裝對應開發包(sudo apt install libwebp-dev)。