我每个月都有数百万个 Post Script 文件。每个文件有 4-5 页。除第1页外,每页内容很少。这样虽然文件内容不是太大,但是却造成了不必要的纸张浪费。
我正在寻找一些工具,可以将第 2 页压缩到最后一页或修剪未使用的空白区域,以便最佳地利用纸张。
我得到了具有 PSNUP 命令的 PSUTILS,但它也没有完全满足我的解决方案。
任何有想法的人都可以帮助解决这个问题。
我的示例 Post 脚本文件可以从以下位置下载
https://www.dropbox.com/s/2z9oirsvxzf13di/1010472622.ps
以上是一个三页的 Post 脚本文件。页码 2 和 3 可以组合在一起以实现最佳纸张使用。
请详细指导
问候 code.box@rediffmail.com
希望这是一个愚蠢的问题,并且很容易解决。当我运行这个简单的 gnuplot 脚本时:
#!/usr/bin/env gnuplot
set term png
set out "out.png"
plot "<jot -r -p 2 500 1 2" not w p pt 7 ps 4 lc rgb "#908DB6CD"
set term post eps enhanced color
set out "out.eps"
replot
exit
Run Code Online (Sandbox Code Playgroud)
png 文件如下所示:
eps 看起来像这样:
该pdfcairo终端也使我的透明度。有关如何使 eps 文件显示透明度的任何线索?
提前谢谢了!
我正在演示一个我一直在研究的想法,尽管Adobe规范说包含PS XObjects不是一个好主意,但某些PDF阅读器仍应支持此功能。无论如何,那是事实。我一直在使用Adobe PDF规范,并具有以下PDF对象。这仅使用PostScript生成伪随机值,然后将其打印到页面上。理想情况下,每次呈现此页面时,都应显示一个新值:
5 0 obj
<< /Type/XObject
/Subtype/PS
/Length 103
>>
stream
/Times findfont 10 scalefont setfont
/str 32 string def
10 20 moveto
rand str cvs show
endstream
endobj
Run Code Online (Sandbox Code Playgroud)
每当我针对此对象进行测试的任何PDF查看器读取该对象时,都会收到诸如“错误(741):缺少'endstream'”之类的错误,并且对该流中的每个令牌都类似。我确信我的补偿是正确的。而且,虽然我知道我的PDF查看器确实支持某些PS用于表单等,但显然有什么不正确的地方。如果有人可以提供示例PDF,那就太好了。我测试了读者的表单示例并没有太大帮助。如果我仅从GhostView运行PS代码,则效果很好。感谢您的见解。
它对我来说超级迷茫,因为pdfmaker和postscript都是一样的,但在实践中编码风格却截然不同.
我知道如何使用Postscript语言中的moveto和lineto以及arc命令在其末尾创建一个2行的行,但是,由于超链接,显然我必须转移到pdfmark,pdfmark手册是超级不可理解的,并且没有其他参考书(书/在线教程).
所以,我会很感激,如果有人可以用一点描述产生这样的东西(如我的图所示).

要将外部EPS文件插入PostScript文档,系统会指示使用文本编辑器打开EPS文件,并在PostScript文件中复制/粘贴基于文本的数据.
我想知道是否有一种标准方法将外部EPS文件包含在PostScript文档中?我的意思是链接到EPS文件,因为PS可以在运行PostScript文档时捕获并读取其内容.我已经阅读了有关run命令的内容,但不知道如何使用它在主PostScript文档中包含外部EPS文件.
更新:将EPS图像插入时
%!PS-Adobe-3.0
/Times-Roman findfont
14 scalefont setfont
72 700 moveto
(Thi is a text) show
72 300 translate
(1.eps)run
72 100 moveto
(Another text bellow image) show
showpage
Run Code Online (Sandbox Code Playgroud)
它发送到下一页.在此示例中,第二个文本转到第2页,而不是显示在位置72 100.
我试图从Postscript/SVG路径重建原始图形基元.因此,原始圆圈(在SVG标记中)呈现为:
<path stroke-width="0.5" d="M159.679 141.309
C159.679 141.793 159.286 142.186 158.801 142.186
C158.318 142.186 157.925 141.793 157.925 141.309
C157.925 140.825 158.318 140.432 158.801 140.432
C159.286 140.432 159.679 140.825 159.679 141.309" />
Run Code Online (Sandbox Code Playgroud)
这是使用4个贝塞尔曲线创建圆的近似值.在其他地方,圆弧由链接的贝塞尔曲线近似.
我的问题是,是否有一种算法可以用来识别这个结构并重建"最佳"圆.我不介意小错误 - 最坏的情况是二阶.
更新:请注意,我不知道这是一个圆圈或圆弧 - 它可能是任何东西.曲线上可能有2,3,4或甚至更多的点.所以我真的很喜欢这种类型的功能:
error = getCircleFromPath(path)
Run Code Online (Sandbox Code Playgroud)
哪里error会尽早表明这是否可能是一个圆圈.
[我同意,如果我知道它是一个圆圈,这是一个更容易的问题.]
更新:@george在某种程度上回答了我的问题,但我不认为这是整个故事.
在转换为原点和归一化后,我似乎在曲线上有以下四点:
point [0, 1] with control point at [+-d,1] // horizontal tangent
point [1, 0] with control point at [1,+-d] // vertical tangent
point [0, -1] with control point at [+-d,-1] // horizontal tangent
point …Run Code Online (Sandbox Code Playgroud) 在PostScript中,如果你有
[4 5 6]
Run Code Online (Sandbox Code Playgroud)
你有以下令牌:
mark integer integer integer mark
Run Code Online (Sandbox Code Playgroud)
堆栈是这样的:
| mark |
| mark | integer |
| mark | integer | integer |
| mark | integer | integer | integer |
| array |
Run Code Online (Sandbox Code Playgroud)
现在我的问题: ] -mark运算符是文字对象还是可执行对象?
我是否正确[-mark是一个文字对象(只是数据),并且] -mark是一个可执行对象(因为你总是需要在看到这个时创建一个数组)-mark运算符)?
PostScript语言参考手册第3.3.2节给我:
[和]运算符在执行时会生成一个文本数组对象,其中en-closed对象为元素.同样,<<和>>(LanguageLevel 2)生成一个文字字典对象.
如果两个[]运算符都是可执行的或只有]运算符,那对我来说并不清楚.
我有一个.pfa字体文件,我想阅读"算法"来渲染字体.但是,大多数信息都隐藏在行中的二进制文件中:
currentfile eexec
743F8413F3636CA85A9FFEFB50B4BB27302A5F6C876586CCC1670A7EF5521E6ADE15AAB4
DD2DDDB83735311FC63DB80D2C96AECFA05BB67F865EA35934B4B79A203A8DD489B09C79
FF6EB9DBCFD889C3E73F8C94BC342AF671D6F688870A62EE1A0DF216E150FFEC64A8C2B7
509AD05C011599C1AD84E6C4B668E07EA219BD72663D8AF4CA8EC8E23AA90DE90BE940C6
6DB849CEDB3B64961365A7CCE47F4FC9E30FDEE4B14B90C2E0D8C344EBC974EABF417B3D
28251A78ACEE2BFC4212B1E3E9C7EBC3262821EE98E538713C64DF0BC13C19337B1307DB
D795D285F959C924FC14AEF7E9D406406CDEE1A35377887A16B13DD51717A86284369FA7
6ABB6A4488B9174A561DA854C33821F3172E4CF956EC9B65F829D69E02BC0EE23044DB1D
9A4D45A14A3998115BEE5DDC582F158DB2E..................
Run Code Online (Sandbox Code Playgroud)
我们如何"解码"这些信息?
我有一个简单的python tkinter绘图程序(用户使用鼠标在画布上绘制).我的目标是保存最终的绘图并将其放入带有其他内容的pdf文件中.
环顾四周后,我意识到我只能将画布绘图保存为这样的postscript文件
canvas.postscript(file="file_name.ps", colormode='color')
所以,我想知道是否有任何方式(任何python模块?)将允许我将postscript文件作为图像插入pdf文件.
可能吗?