将PostScript转换为图像

时间:2015-03-04 13:56:36

标签: python image tkinter postscript tkinter-canvas

我无法将postscript(.eps)文件转换为任何类型的图片。 每当我使用PIL保存加载的.eps文件时,它的质量很糟糕,并且在tkinter中呈现的文本是不可读的。我认为这是因为.eps文件是某种矢量图像并使用PIL保存它并不能提供正确的分辨率,但我不确定。

有谁知道如何以更高的分辨率保存PostScript文件(如果可能,不是在命令行中)或将tkinter画布保存为图像的任何其他方法?任何帮助将不胜感激。

给出一些背景;我正在尝试创建一个python脚本,它采用tkinter画布并保存图像,以便它可以在浏览器中实时显示并在页面加载时显示。

1 个答案:

答案 0 :(得分:4)

1

Ghostscript 可以做到:

gs -o output.png -sDEVICE=pngalpha input.eps

通过添加-r ...,您可以以高于默认72PPI的分辨率获得输出:

gs -o output.png -sDEVICE=pngalpha -r300 input.eps

2

ImageMagick 也可以这样做:

convert input.eps output.png

要获得更高的分辨率,请添加-density ...

convert -density 300 input.eps output.png

然而,ImageMagick无论如何都会调用Ghostscript,将其作为' delegate' 来处理PostScript输入。通过在命令行中添加-verbose可以看到这一点。 (缺少附带的Ghostscript安装的ImageMagick安装不适用于EPS输入文件!)

最好直接使用Ghostscript ......