2015-02-17 69 views
1

我想将具有相同宽度和高度的EPS图转换为PDF图。Ghostscript:如何将EPS转换为具有相同页面大小的PDF

以下命令:

gswin32 -dSAFER -dNOPLATFONTS -dNOPAUSE -dBATCH \ 
    -sDEVICE=pdfwrite -sPAPERSIZE=letter -dCompatibilityLevel=1.4 \ 
    -dPDFSETTINGS=/printer -dCompatibilityLevel=1.4 -dMaxSubsetPct=100 \ 
    -dSubsetFonts=true -dEmbedAllFonts=true -sOutputFile="test.pdf" \ 
    -f "test.eps" 

只生产一个字母的页面大小的PDF文件。

任何帮助将不胜感激。

下面是测试EPS文件:https://dl.dropboxusercontent.com/u/45318932/test.eps

回答

3

EPS文件不能包含介质尺寸要求。在没有任何媒体大小请求的情况下,Ghostscript使用默认值。

但是.....

从文档:

http://www.ghostscript.com/doc/9.15/Use.htm#EPS_parameters

-dEPSCrop: 作物EPS文件边界框。将EPS文件转换为位图时非常有用。

+0

大。不能接受两个答案。但我已经投票赞成你们两位。 – 2015-02-19 14:27:59

+0

@Leo:你应该接受KenS的回答 - 他是第一个...... :-) – 2015-02-19 14:32:06

+0

@KurtPfeifle完成。 :)谢谢KenS和Kurt。 – 2015-02-19 14:33:17

3

为了KENS的回答更加明确,使用您链接到...以下命令将test.eps样本文件将足以做你想做的:

gswin32     \ 
-sDEVICE=pdfwrite  \ 
-dPDFSETTINGS=/printer \ 
-dEPSCrop    \ 
-o test.pdf   \ 
    test.eps 

-o test.pdf是(对于不是太古老的版本Ghostscript!)的简写为-dNOPAUSE -dBATCH -sOutputFile=test.pdf。您的test.eps使用字体/SHZENL+Tahoma_00。 Ghostscript会自动嵌入这种字体,并且它将默认为一个子集(但前缀SHZENL可能会在PDF中更改)。

下面是从您的问题创建的命令页面截图。该网页是612 x 792 pts(letter尺寸):

enter image description here

下面是从命令创建我的答案给出的页面截图。它的页面大小为360 x 216 pts

Result when adding <code>-dEPSCrop</code>

+0

太好了。不能接受两个答案。但我已经投票赞成你们两位。 – 2015-02-19 14:27:15

相关问题