在 Debian 下使用 CxImage 进行图片格式转换,一般有两种方式:
下面分情况说明。
Debian 官方仓库 没有 cximage 包,需要自己编译。
sudo apt update
sudo apt install build-essential git unzip
git clone https://github.com/pmneila/cximage.git
cd cximage
(或去 sourceforge 下载官方版本)
make
编译后会得到:
libcximage.acximage 命令行工具)#include "ximage.h"
#include <stdio.h>
int main() {
CxImage image;
if (!image.Load("input.jpg", CXIMAGE_FORMAT_JPG)) {
printf("Load failed\n");
return -1;
}
if (!image.Save("output.png", CXIMAGE_FORMAT_PNG)) {
printf("Save failed\n");
return -1;
}
printf("Convert OK\n");
return 0;
}
g++ convert.cpp -I. -L. -lcximage -lpng -ljpeg -lz -o convert
./convert
| 格式 | 宏 |
|---|---|
| JPG | CXIMAGE_FORMAT_JPG |
| PNG | CXIMAGE_FORMAT_PNG |
| BMP | CXIMAGE_FORMAT_BMP |
| TIF | CXIMAGE_FORMAT_TIF |
| GIF | CXIMAGE_FORMAT_GIF |
如果你 不是必须要用 CxImage,Debian 下更推荐:
sudo apt install imagemagick
convert input.jpg output.png
或
sudo apt install graphicsmagick
gm convert input.jpg output.png
如果你愿意,可以告诉我:
我可以直接给你完整可编译示例。