将ppm转换为png

Har*_*gar 12 c++ image

在Linux中我得到.PPM文件作为图像格式,这需要转换为PNG然后保存.我正在寻找一些API来实现从PPM到PNG的转换.这可以使用GDI +完成,因为这将成为原生的吗?

如果那是不可能的,那么我认为freeimage或pnglib可以实现这一点,但是如果可能的话我宁愿使用原生的gdi +.

jon*_*oni 24

快速和脏:下载Imagemagick并从CLI使用它:

convert xx.ppm xx.png
Run Code Online (Sandbox Code Playgroud)

或者使用Imagemagick的DLL API


Mar*_*ell 6

虽然ImageMagick可以愉快地完成您需要的操作,但实际上它是一把大锤,要比NetPBM套件安装起来麻烦,费时且费时。

这样,您将执行以下操作:

pnmtopng image.ppm > result.png
Run Code Online (Sandbox Code Playgroud)

  • @Thomas ImageMagick 是一套功能强大且全面的工具。大部分功能来自于利用其他软件包,例如 libtiff、libjpeg、XML 工具、X11、fftw、OpenEXR、Cairo、Pango、freetype、Ghostscript、heif、rsvg、CMS。大量的依赖项可能会导致不兼容以及安装和配置困难。相比之下,NetPBM 是独立的。不要误会我的意思,我对 ImageMagick 的能力感到敬畏,但有时您需要一把剪刀,有时您需要电锯、起重机和工业液压钢板切割机。 (2认同)

use*_*543 5

你可以使用ffmpeg,进行批量转换你可以做

#!/bin/bash
for i in *.ppm;
  do name=`echo "$i" | cut -d'.' -f1`
  echo "$name"
  ffmpeg -i "$i" "${name}.png"
done
Run Code Online (Sandbox Code Playgroud)


BЈо*_*вић -1

您可以使用 ImageMagick 库:

http://www.imagemagick.org/script/index.php

但它还能做很多其他事情。