后记文件上的奇怪操作数(t!)

时间:2018-06-20 15:29:30

标签: postscript

我正在尝试对一些Postscript文件进行反向工程,并遇到以下这组命令:

{/@co18
37 59 63 t! (PROMO) eq
not
def}exec

所以基本上,我感到困惑的是这一行:

37 59 63 t! (PROMO) eq

t!代表什么? eq操作数需要从堆栈中取出2个对象并进行比较。因此,据我了解,t!用前面的3个数字进行一些计算,并将结果保存在堆栈中。结果可能是某种字符串,因为稍后会将其与“ PROMO”进行比较。

我在代码中的任何地方都没有看到这个t!定义,但它出现在许多其他地方:

{@co3{@st2 setfont
186.71 106.80 moveto
59 22 31 t! sr }if}^ap

(此外,仍然不确定^ap操作数在做什么)

2 个答案:

答案 0 :(得分:2)

您需要找到定义,它不是标准的PostScript,因此必须在程序中的某个位置定义。它可能在eexec加密部分中。

您需要先举一个例子,然后我才能进一步评论。

答案 1 :(得分:1)

因此,缺少的命令在代码的eexec部分中被“隐藏”了。 我使用Samyak答案对此问题解密: How to "decode" eexec of font file?