gpt4 book ai didi

python - 如何在 Python 3.6 中将 .eps 文件转换为 .png

转载 作者:可可西里 更新时间:2023-11-01 10:32:41 25 4
gpt4 key购买 nike

我尝试使用 Python turtle 将 Canvas 保存为 png。我对其进行了研究并找到了一种将其另存为 eps 文件而不使用任何模块的方法,但我发现很难将 eps 文件转换为 png。

有没有办法在不下载另一个模块的情况下将 eps 转换为 png?如果没有,有人可以告诉我更多关于 ImageMagick 的信息,因为我看过它,但我对如何使用它感到困惑?我还看到它与 linux 相关联,它是否已过时?

如果不将 eps 转换为 png,是否有更简单的方法将 Canvas 另存为 png?

顺便说一句,我看过这个,但我不明白:/ How to convert a .eps file to a high quality 1024x1024 .jpg?

最佳答案

从您显示的链接中,有这个 Imagemagick 命令:

convert -density 300 image.eps -resize 1024x1024 image.jpg

大多数 EPS 文件都是矢量图像。它们没有以像素为单位的物理尺寸,因为它是一个矢量绘图,带有描述如何绘制每个对象的命令。它不是包含像素的光栅图像,也没有任何特定的像素尺寸集。

因此,对于矢量文件,您可以设置打印密度来告诉 Imagemagick(将其传递给 Ghostscript 进行光栅化工作)将矢量数据转换为光栅数据,然后将其保存为光栅格式输出图像。标称密度为 72 dpi(有时为 92 或 96)。因此,如果您将 -density 288 与以下命令一起使用:

convert -density 288 image.eps image.png

这会导致图像在每个维度上都比刚才大 4 倍

convert image.eps image.png

对于 72 的默认 dpi 将与

相同
convert -density 72 image.eps image.png

注意 72*4=288。

现在你有一个大的高质量光栅 png,特别是如果 eps 文件是带有细线的线条图,如蓝图。

但是,如果它太大并且您想将其减小到标称尺寸的 1/4,您可以这样做(注意 1/4 = 25%)

convert -density 288 image.eps -resize 25% image.png

这个过程有时被称为 super 采样并且会产生比仅仅这样做更好看的结果

convert image.eps image.png

在原始命令中,他们决定获取高质量的光栅图像,并将大小调整为 1024x1024。

因此,在从 EPS 矢量图像生成高清光栅图像后,您可以将其调整为任意大小。

您使用的密度越大,PNG 的质量就越高,但处理时间会更长。因此,您必须权衡时间与质量,并选择能够在合理的时间内产生足够好的质量的最小密度。

不知道Python Wand是否支持设置密度,是否支持读取PDF文件,需要Ghostscript。但是您可以使用 Python Subprocess 模块来调用 Imagemagick 命令行。参见 https://www.imagemagick.org/discourse-server/viewtopic.php?f=4&t=32920

关于python - 如何在 Python 3.6 中将 .eps 文件转换为 .png,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45828514/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com