带有imagemask和原始数据的PostScript错误

时间:2016-12-16 19:03:04

标签: ghostscript postscript

在Adobe的PLRM中 我使用imagemask运算符找到了以下示例。 使用Ghostscript时,这可以正常工作。

54 112 translate               % Locate lower-left corner of square
120 120 scale                  % Scale 1 unit to 120 points
0 setgray                      % Set current color to black
24 23                          % Specify dimensions of source mask
true                           % Set polarity to paint the 1 bits
[24 0 0 -23 0 23]              % Map unit square to mask
{< 003B00 002700 002480 0E4940
   114920 14B220 3CB650 75FE88
   17FF8C 175F14 1C07E2 3803C4
   703182 F8EDFC B2BBC2 BB6F84
   31BFC2 18EA3C 0E3E00 07FC00
   03F800 1E1800 1FF800 >}
imagemask
showpage

作为练习,我尝试使用ImageType-1字典和原始数据重写上面的示例,最后想出了这段代码:

54 112 translate
120 120 scale
0 setgray
<<
  /ImageType 1
  /Width 24
  /Heigth 23
  /BitsPerComponent 1
  /Decode [1 0]
  /ImageMatrix [24 0 0 -23 0 23]
  /DataSource currentfile /ASCIIHexDecode filter
>>
imagemask
003B00 002700 002480 0E4940
114920 14B220 3CB650 75FE88
17FF8C 175F14 1C07E2 3803C4
703182 F8EDFC B2BBC2 BB6F84
31BFC2 18EA3C 0E3E00 07FC00
03F800 1E1800 1FF800>
showpage

但是,当使用Ghostscript运行时,我收到以下错误。

Error: /undefined in --imagemask--

我仍在摸索着找到这个虫子,但徒劳无功。 怎么可能imagemask未定义?还是我错过了一些明显的东西?

1 个答案:

答案 0 :(得分:1)

我不知道这是否完全您编写的代码,但是有一个错字:

  /Height 23

显然应该是:

Point(4, 10).slopeFromOrigin()
2.5
Point(12, -3).slopeFromOrigin()
-0.25
Point(-6, 0).slopeFromOrigin()
0

如果我更正了,那么文件将运行完成,然后绘制火鸡。

相关问题