使用eps2write创建仅ASCII的EPS

时间:2016-05-29 09:32:25

标签: ascii ghostscript eps

我有简单的ASCII EPS文件,我需要将文本转换为路径。我这样做的方式如下:

gs -sDEVICE=eps2write -dNoOutputFonts -o out.eps in.eps

生成的EPS包含一些二进制流,如下所示:

enter image description here

似乎是蒸馏器参数can also be used for PostScript output devices(对我来说,PostScript输出看起来非常像PDF,其中一些标题在PostScript中实现了PDF功能)。但是,in the documentation我没有看到一个明显的参数,它会使Ghostscript使用纯ASCII编码对流进行编码。我最好的猜测是UseFlateCompression选项,它没有效果:

gs -sDEVICE=eps2write -o out.eps -c '<</UseFlateCompression false>> setdistillerparams' -f in.eps

1 个答案:

答案 0 :(得分:1)

您是正确的,在适当的情况下,蒸馏器参数也会影响(e)ps2write设备。此外,ps2write输出广泛地是一个带有prolog的PDF文件,它定义了处理PDF操作符的特定例程(这不是相当是真的,但非常接近)。 / p>

根据文档,将UseFlateCompression设置为false无效。如果它这样做,它只会将其切换到LZWCompression,这对你来说真的无济于事。

对于仅ASCII编码,没有选项可以按每个对象或流执行此操作,但是您可以选择(e)ps2write特定的标记&#39; -dCompressEntireFile&#39;这将LZWEncode整个文件,然后应用ASCII-85编码。

这不是默认(以前是)的原因是因为我们有针对某些PostScript打印机的报告,这些打印机无法处理这种组合(错误在打印机中,而不是PostScript程序)和我们必须更改默认设置以更好地支持这些打印机。

这应该会产生一个ASCII EPS文件,如果这是你的目标,尽管显然不应该编码它......

顺便说一句,您链接到的文档是9.16版本,您应该考虑使用当前版本,以及随附的documentation。该开关记录在第6.5节&#34; PostScript文件输出&#34;

中的vectordevices.htm中。