也许这是一个愚蠢的问题,但我没有PostScript / EPS的经验,我需要(尝试)解决我遇到的问题(过去的功能......所以我被告知)。全部都在Windows 7 x64下。
要求要求将EPS文件链接到另一个EPS文件中。它的使用方式是使用“run”命令以及“translate”和“scale”以使child.eps适合parent.eps。 (这是由Java类完成的)
考虑以下(简化)示例:
%!PS-Adobe-3.0 EPSF-3.0
%!PS-Adobe EPSF-3.0
%%BoundingBox: 0 0 800 200
/Courier findfont 70 scalefont setfont
10 10 moveto
(Hello World!) show
%%EOF
以上工作正常,但如果在 %% EOF 之前,我添加
(child.eps)运行
我得到了非常奇怪的行为(在3台Windows PC上尝试了这一点,结果完全相同):
我错过了什么?或者我做错了什么?
除了使用“run”命令之外,还有其他方法可以将EPS链接到另一个EPS中,这样我可以获得一致的结果吗?
谢谢!
LE:两者,Parent.eps和Child.eps都在同一个文件夹中
答案 0 :(得分:1)
PostScript语言没有任何“链接”概念。当你认为PostScript是一种编程语言时就不足为奇了。
令人惊讶的是,执行'运行'在EPS文件中,它不会使其成为无效的EPS。
这对我来说是令人惊讶的,因为您假设要做的是包含父级内的辅助EPS文件。 EPS文件的全部意义在于它的“黑盒子”,要使其能够运行封装的PostScript程序,只需要设置CTM以将EPS扩展到它想要的空间,然后执行EPS。 EPS不应有任何副作用。
无论如何,PostScript中没有任何其他功能可以满足您的需求。我强烈怀疑任何一个Illustrator都没有提供PostScript解释器,或出于安全原因以某种方式限制它。如果PostScript有效,Illustrator不是一种可靠的测试方法!
为什么要将其加载到Illustrator中?您是否考虑使用PDF而不是EPS?