在我将PDF文件转换为PNG时遇到了几个问题。 透明度从源pdf文件中丢失。将多页PDF转换为具有透明度的PNG
我测试了以下终端工具来创建png: poppler工具中的GhostScript,Imagemagick和pdf工具,始终在debian系统上。
图像应该与pdf具有相同的维度,也是相同的透明度。
使用的命令:
gs -dNOPAUSE -sDEVICE=pngalpha -sOutputFile=test%d.png -r96 -q design.pdf -c quit
convert design.pdf test%d.png
convert design.pdf -channel rgba -alpha on PNG32:test%d.png
convert -background none -colorspace srgb design.pdf -colorspace srgb -channel rgba -alpha on PNG32:test%d.png
pdftoppm -png file.pdf test
结果不是预期的PNG有透明度。背景是白色的,应该100%透明。另外还有一个绿色的酒吧,应该是半透明的。在我所有的尝试中,结果都以一个没有透明度的浅绿色方框结束。
要查看我的结果,我已经上传了源pdf,错误创建的png和预期结果(从photoshop导出)。
PDF: http://speedy.sh/W75HP/source-file.pdf
Result: http://speedy.sh/hfZMt/faulty-created-design.png
Expected: http://speedy.sh/7mpEk/design-the-way-it-should-be.png
我设法让白色背景变得透明,但实际的文件透明度,包括半透明的绿色条/盒,没有正确转换。
我的问题的解决方案是什么?
最好的问候, 克里斯
// UPDATE 好吧,我们发现与另一届党的工具,它产生于一个简单的方法我的预期结果的解决方案。
inkscape design.pdf -z --export-dpi=100 --export-png=design.png
THX的帮助
*背景是白色的,应该是100%透明。* - PDF页面的背景根据规范是白色的。也许你的工具尊重规范并且先把背景涂成白色。 – mkl
@mkl:不,默认情况下,PDF页面背景不是白色。它会默认显示*白色。但是你可以改变大多数读者将其显示为像*** ***这样的棋盘,它是透明的。对于Adobe Reader:确保在首选项 - >页面显示 - >页面内容和信息 - >显示透明度网格* –
@KurtPfeifle中启用复选框“当前页面的概念被泛化为指由放置在页面上的整个对象堆叠,与纯白色和完全不透明的背景合成。“ ......“背景是名义上的白色,虽然根据媒体的实际属性而有所不同。然而,一些符合要求的读者可能会选择提供不同的背景,例如检查板或网格,以帮助可视化艺术品透明度的效果。“因此,它*是*白色,但可能*可视化*不同。 – mkl