/* 图片路径 */
const char file_path[] = "D:/studyplace/workplace/cpp/resource/1.jpg";
const char result_path[] = "D:/studyplace/workplace/cpp/resource/tmp.jpg";
/* 普通图片旋转 */
int magick_rotate()
{
int rc = 0;
PixelWand* background_color = NULL;
MagickWand* magick_wand = NULL;
// 初始化ImageMagick库
MagickWandGenesis();
// 创建MagickWand对象
magick_wand = NewMagickWand();
// 读取图片文件
if (MagickReadImage(magick_wand, file_path) == MagickFalse) {
printf("Failed to read image\n");
rc = -1;
goto l_out;
}
background_color = NewPixelWand();
PixelSetColor(background_color, "#FF0"); // 这里可以设置为你想要的颜色,比如"#FFF"表示白色
// 旋转图片(顺时针90度)
if (MagickRotateImage(magick_wand, background_color, 30) == MagickFalse) {
printf("Failed to rotate image\n");
rc = -1;
goto l_e_free;
}
// 保存旋转后的图片
if (MagickWriteImage(magick_wand, result_path) == MagickFalse) {
printf("Failed to write image\n");
rc = -1;
goto l_e_free;
}
background_color = DestroyPixelWand(background_color);
magick_wand = DestroyMagickWand(magick_wand);
l_out:
MagickWandTerminus();
return rc;
l_e_free:
background_color = DestroyPixelWand(background_color);
magick_wand = DestroyMagickWand(magick_wand);
goto l_out;
}
int main() {
magick_rotate();
return 0;
}
06-23