use*_*440 5 pdf imagemagick image-processing file-conversion
我使用Imagemagick转换将pdf文件转换为png,如下所示:
Magick convert -density 300 PointOnLine.pdf -quality 90 PointOnLine.png
Run Code Online (Sandbox Code Playgroud)
它给了我以下警告:
convert: profile 'icc': 'RGB ': RGB color space not permitted on grayscale PNG `PointOnLine.png' @ warning/png.c/MagickPNGWarningHandler/1744.
Run Code Online (Sandbox Code Playgroud)
并且创建的png图像全黑.但是,转换为jpg图像很好.
更新:添加-define配置文件后:skip = ICC,图像仍然很暗.但如果转换为jpg然后转换为png,则可以,但背景很暗.仍有同样的警告.问题是什么?谢谢.
以下内容适用于 ImageMagick 7.0.7.22 Q16 Mac OSX Sierra,使用 Ghostscript 9.21 和 libpng @1.6.34_0,没有错误。您的 PDF 有一个 Alpha 通道,因此您可能需要将其展平。
magick -density 300 PointOnLine.pdf -flatten -quality 90 result.png
Run Code Online (Sandbox Code Playgroud)
这也可以正常工作,不会出现错误,但会在 png 中留下 alpha 通道,尽管在提取图像之前您不会在此处看到它:
magick -density 300 PointOnLine.pdf -quality 90 result2.png
Run Code Online (Sandbox Code Playgroud)
请注意,在 IM 7 中,您应该只使用 magick 而不是 magick Convert。
如果没有得到相同的结果,请检查您是否使用的是最新版本的 Ghostscript 和 libpng。
PS:alpha 的 delegates.xml 文件应显示 sDEVICE=pngalpha 而不是 pnmraw,如下所示。
<delegate decode="ps:alpha" stealth="True" command=""gs" -sstdout=%%stderr -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 "-sDEVICE=pngalpha" -dTextAlphaBits=%u -dGraphicsAlphaBits=%u "-r%s" %s "-sOutputFile=%s" "-f%s" "-f%s""/>
用户要求删除我发布的结果图像!
| 归档时间: |
|
| 查看次数: |
2503 次 |
| 最近记录: |