使用ghostscript转换后如何防止白边
How to prevent the white border after convert with ghostscript
我尝试使用 ghostscript 将 .eps 文件转换为 .png。
.eps 文件的分辨率为 1000x1000 像素。但是 outfile 的左侧和底部有白色的大边框。
gs -dNOPAUSE -dBATCH -r1000x1000 -q -sDEVICE=png256 -dDEVICEWIDTHPOINTS=880 -dDEVICEHEIGHTPOINTS=720 -sOutputFile=infile.png infile.eps
在没有看到 eps
文件的情况下不确定是什么原因造成的,但是您可以 trim 使用 ImageMagick
关闭它,如下所示:
convert SomeFile.png -trim result.png
ImageMagick
安装在大多数 Linux 发行版上,可用于 OSX 和 Windows.
我找到了解决方案:
-dEPSCrop
EPS 文件没有分辨率,因此它不可能有 1000x1000 的分辨率,尤其是 1000x1000 像素,因为那不是分辨率,它是尺寸。
我很怀疑你想将分辨率设置为 1000 dpi,同时将媒体大小设置为 880 点 x720 点。这将导致 .png 12000x10000 像素。 (英寸有 72 点,这意味着您将 12x10 英寸的介质设置为每英寸 1000 doits)
处理 EPS 文件(与 PostScript 文件略有不同但很重要)的正确方法是自行安排缩放比例。
如果生成的图像的尺寸对您不重要,那么您可以使用 -dEPSCrop 生成图像,其中媒体的尺寸取自 EPS 文件中的注释。
如果您要求图像具有特定尺寸,那么您应该使用 -g 设置媒体大小(以像素为单位)、设置 -dFIXEDMEDIA 和设置 -dEPSFitPage,这将缩放 EPS 以适合媒体尺寸。
我尝试使用 ghostscript 将 .eps 文件转换为 .png。
.eps 文件的分辨率为 1000x1000 像素。但是 outfile 的左侧和底部有白色的大边框。
gs -dNOPAUSE -dBATCH -r1000x1000 -q -sDEVICE=png256 -dDEVICEWIDTHPOINTS=880 -dDEVICEHEIGHTPOINTS=720 -sOutputFile=infile.png infile.eps
在没有看到 eps
文件的情况下不确定是什么原因造成的,但是您可以 trim 使用 ImageMagick
关闭它,如下所示:
convert SomeFile.png -trim result.png
ImageMagick
安装在大多数 Linux 发行版上,可用于 OSX 和 Windows.
我找到了解决方案: -dEPSCrop
EPS 文件没有分辨率,因此它不可能有 1000x1000 的分辨率,尤其是 1000x1000 像素,因为那不是分辨率,它是尺寸。
我很怀疑你想将分辨率设置为 1000 dpi,同时将媒体大小设置为 880 点 x720 点。这将导致 .png 12000x10000 像素。 (英寸有 72 点,这意味着您将 12x10 英寸的介质设置为每英寸 1000 doits)
处理 EPS 文件(与 PostScript 文件略有不同但很重要)的正确方法是自行安排缩放比例。
如果生成的图像的尺寸对您不重要,那么您可以使用 -dEPSCrop 生成图像,其中媒体的尺寸取自 EPS 文件中的注释。
如果您要求图像具有特定尺寸,那么您应该使用 -g 设置媒体大小(以像素为单位)、设置 -dFIXEDMEDIA 和设置 -dEPSFitPage,这将缩放 EPS 以适合媒体尺寸。