PostScript ASCII85解码过滤器
PostScript ASCII85Decode filter
我正在尝试使用 PostScript 的 ASCII85Decode 过滤器。将以下行添加到我的 PS 文件中效果很好,即字母 XYZ 在页面上正确显示:
200 300 translate 0 0 moveto (XYZ) show
然后我使用在线工具对上面的行进行了 ASCII85 编码,并将下面包含编码字符串的代码片段(如 PLRM 中所建议的那样)放入我的 PS 文件中与上一行相同的位置:
currentfile /ASCII85Decode filter cvx exec
<~1,(C)1GCL*FE1f-F)59,AKWZL0Hb4NG%Gc6+=L>p=t(S8BQ&)%~>
生成的 PS 文件在 GSView 控制台中给我以下错误:
Error: /undefined in T
Operand stack:
Execution stack:
%interp_exit .runexec2 --nostringval-- --nostringval-- -- nostringval-- 2 %stopped_push --nostringval-- --nostringval-- false 1 %stopped_push 1926 1 3 %oparray_pop 1925 1 3 %oparray_pop 1909 1 3 %oparray_pop 1803 1 3 %oparray_pop --nostringval-- %errorexec_pop .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval--
Dictionary stack:
--dict:1176/1684(ro)(G)-- --dict:0/20(G)-- --dict:83/200(L)-- --dict:139/150(L)--
Current allocation mode is local
Last OS error: No such file or directory
我希望 ASCII85Decoder 解码编码的字符串,并且字母 'XYZ' 出现在页面上。
我做错了什么?
嗯,第一个问题是你没有选择字体,所以内部 exec 抛出一个错误。如果你使用这个:
200 300 translate 0 0 moveto /Helvetica findfont 20 scalefont setfont (XYZ) show
它会更好用。您没有说您使用的是哪个版本的 Ghostscript(或哪个 OS),但您的字符串对我来说没有错误。但是将上面的字符串编码为:
1,(C)1GCL*FE1f-F)59,AKWZL0Hb4NG%Gc6+>68sCj'B3Bk(QoAnc-nAoDR/+>PVnF(8WpAS,ju
F<GX9FCoH/F<Du6=^!6sF(fK9~>
(注意 ,ju 后面有一个 0x0a)
导致在输出上绘制 XYZ。
我正在尝试使用 PostScript 的 ASCII85Decode 过滤器。将以下行添加到我的 PS 文件中效果很好,即字母 XYZ 在页面上正确显示:
200 300 translate 0 0 moveto (XYZ) show
然后我使用在线工具对上面的行进行了 ASCII85 编码,并将下面包含编码字符串的代码片段(如 PLRM 中所建议的那样)放入我的 PS 文件中与上一行相同的位置:
currentfile /ASCII85Decode filter cvx exec
<~1,(C)1GCL*FE1f-F)59,AKWZL0Hb4NG%Gc6+=L>p=t(S8BQ&)%~>
生成的 PS 文件在 GSView 控制台中给我以下错误:
Error: /undefined in T
Operand stack:
Execution stack:
%interp_exit .runexec2 --nostringval-- --nostringval-- -- nostringval-- 2 %stopped_push --nostringval-- --nostringval-- false 1 %stopped_push 1926 1 3 %oparray_pop 1925 1 3 %oparray_pop 1909 1 3 %oparray_pop 1803 1 3 %oparray_pop --nostringval-- %errorexec_pop .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval--
Dictionary stack:
--dict:1176/1684(ro)(G)-- --dict:0/20(G)-- --dict:83/200(L)-- --dict:139/150(L)--
Current allocation mode is local
Last OS error: No such file or directory
我希望 ASCII85Decoder 解码编码的字符串,并且字母 'XYZ' 出现在页面上。
我做错了什么?
嗯,第一个问题是你没有选择字体,所以内部 exec 抛出一个错误。如果你使用这个:
200 300 translate 0 0 moveto /Helvetica findfont 20 scalefont setfont (XYZ) show
它会更好用。您没有说您使用的是哪个版本的 Ghostscript(或哪个 OS),但您的字符串对我来说没有错误。但是将上面的字符串编码为:
1,(C)1GCL*FE1f-F)59,AKWZL0Hb4NG%Gc6+>68sCj'B3Bk(QoAnc-nAoDR/+>PVnF(8WpAS,ju
F<GX9FCoH/F<Du6=^!6sF(fK9~>
(注意 ,ju 后面有一个 0x0a)
导致在输出上绘制 XYZ。