在我的应用程序中将数据保存到Postscript会生成一个Postscript文件,我可以在GhostView中查看而没有问题,但是当我尝试打印它时,打印机无法打印它,因为它似乎无效.
有没有办法在Postscript文件中验证/查找错误而不实际将其发送到打印机?首选的是某种Java API /库,但执行相同操作的程序也可以.
编辑#1:不,我不知道为什么它是无效的,甚至不一定是无效的,但是希望能够在ghostview之外验证它,或者弄清楚当它无法打印时会发生什么.
答:使用ps2ps技巧,我能够看到Postscript的输出,并检查差异.不同之处在于我不允许在Postscript中为图像的宽度或高度设置十进制数,而只允许使用整数.所以我仍然没有找到验证的方法,但这种方式对我的问题来说已经足够了.谢谢.
有没有一种简单的方法可以将postscript页面强制插入到新的物理页面而不插入空白页面?
例如,假设我有一个包含10个postscript页面的PS文档,需要打印到不同的文档包中:
1 - 物理页面1正面
2 - 物理Page 1后侧
3 - 物理Page 2
4 - 物理正面
5 - 物理Page 3后侧
6 - 物理Page 4正面
7 - 物理Page 5
8 - 物理Page 6正面
9 - 物理Page 7正面
10 - 物理Page 7后侧
我可以将整个文件设置为双面打印,并在第3,6,7和8页之后插入虚拟页面,但我希望避免这种情况,因为我们的打印机每次展示费用,而非每个实际页面.
我希望有一个简单的PS语法,对应于"强制到首页".
所以我想使用Ghostscript将以PCL格式创建的文件转换为PostScript.
这是我的问题的主旨.我只是试图在命令行上运行它,但在最后阶段它必须在lp命令上运行,如lp -d <gs
GPL Ghostscript 9.00(2010-09-14)我将在Solaris 10服务器上运行它,但我相信任何Unix系统都应该类似.
bash-3.00# /usr/local/bin/gs -sDEVICE=pswrite -dLanguageLevel=1 -dNOPAUSE -dBATCH -dSAFER -sOutputFile=output.ps cms-form.pcl
GPL Ghostscript 9.00 (2010-09-14)
Copyright (C) 2010 Artifex Software, Inc. All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
Error: /undefined in &k2G-210z100u0l6d0e63fa0V
Operand stack:
Execution stack:
%interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_push 1910 1 3 %oparray_pop 1909 1 3 %oparray_pop 1893 1 3 %oparray_pop 1787 1 3 %oparray_pop --nostringval-- …Run Code Online (Sandbox Code Playgroud) 所以我想在pdf文件的每一页的底部添加一个"页脚"(一个属性),我通过linux中的groff通过postscript生成.我正在使用ps2pdf工具将文件从ps转换为pdf,因此我可以访问这两种格式.
这两个帖子有点帮助:
我并不反对使用第一种方法,但我无法访问pdflatex第一个脚本中提到的实用程序,也无法在需要执行此操作的计算机上安装它.
看起来第二种方法可能会起作用,但我安装了版本8.15的ghostscript,并且我没有看到手册页上列出的许多标志(http://unix.browserdebug.com/man/gs/).我想我可以访问"-c"标志来插入一些postscript代码,即使它没有列出.无论如何,这是我尝试过的两个命令:
gs -o output.pdf -sDEVICE=pdfwrite -g5030x5320 \ -c "/Helvetica-Italic findfont 15 scalefont setfont 453 482 moveto (test-string) show" \ -f input.ps
这给了我这个:
Unknown switch -o - ignoring ESP Ghostscript 815.02 (2006-04-19) Copyright (C) 2004 artofcode LLC, Benicia, CA. All rights reserved. This software comes with NO WARRANTY: see the file PUBLIC for details. ERROR: /undefinedfilename in (output.pdf) Operand stack: Execution stack: %interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- …
当我使用以下ghostscript命令从PDF生成jpg缩略图时,图像质量通常很差:
gs -q -dNOPAUSE -dBATCH -sDEVICE=jpeggray -g465x600 -dUseCropBox -dPDFFitPage -sOutputFile=pdf_to_lowres.jpg test.pdf
Run Code Online (Sandbox Code Playgroud)
相比之下,如果我使用ghostscript生成高分辨率png,然后使用mogrify将高分辨率png转换为低分辨率jpg,我会得到相当不错的结果.
gs -q -dNOPAUSE -dBATCH -sDEVICE=pnggray -g2550x3300 -dUseCropBox -dPDFFitPage -sOutputFile=pdf_to_highres.png test.pdf
mogrify -thumbnail 465x600 -format jpg -write pdf_to_highres_to_lowres.jpg pdf_to_highres.png
Run Code Online (Sandbox Code Playgroud)
有没有办法在绕过中间pdf - >高分辨率png步骤的同时取得好成绩?我需要为大量的pdf执行此操作,因此我正在尝试最小化计算时间.
以下是上面引用的图像的链接:
我正在尝试使用ghostscript将.ps文件转换为一系列.png文件,主要是因为我没有可容忍的ps查看器.
这是我用过的命令:
gs -dBATCH -dEPSCrop -dEPSFitPage -sDEVICE=png16m -r300 -dNOPAUSE -sOutputFile=neptune_111115_ob1-2_13pca_boloplots_%d.png neptune_111115_ob1-2_13pca_boloplots.ps
Run Code Online (Sandbox Code Playgroud)
(.ps文件是一个多页的附言).
输出部分偏离页面.我希望图像适合页面.
我可以包含示例文件,但它们非常大 - 是否有任何特定的.ps文件部分会有用吗?
我怀疑是.ps文件错误地指定了边界框,但是黑客攻击BB值没有任何影响..ps文件由IDL(ittvis'交互式数据语言)编写.我没有运行-dEPS*命令也尝试了上面的命令.
我试图修改Scala中的大型PostScript文件(有些大小只有1GB).该文件是一组批次,每批包含代表批号,页数等的代码.
我需要:
我当前的解决方案使用两个迭代器(iterA和iterB),从中创建Source.fromFile("file.ps").getLines.第一个迭代器(iterA)遍历一个while循环到批处理代码的开头(iterB.next每次都被调用).iterB然后继续搜索,直到下一个批处理代码(或文件末尾),计算它经过的页面数量.然后,它更新批次代码iterA的位置,重复该过程.
这似乎非Scala-like,我仍然没有设计好将这些更改保存到新文件的方法.
解决这个问题的好方法是什么?我应该完全抛弃迭代器吗?我最好喜欢这样做而不必将整个输入或输出同时存入内存.
谢谢!
我的公司创建了GraphPad Prism,这是一个广泛使用的程序,供科学家分析数据和制作技术图表.科学家通常会从GraphPad Prism中导出图表,以便提交给科学期刊.目前大多数期刊想要的格式是EPS,我们导出基于矢量的EPS文件.但字体是一个问题.
我们提供了一个"嵌入"字体到EPS文件的选项.我们的意思是将文本转换为轮廓或字形.这些EPS文件可以在缺少原始字体的其他计算机上打开.但是,期刊制作人员在处理这些EPS文件时无法编辑文本,更改字体大小等.
我的程序员告诉我,"嵌入字体"这个术语正是我们所做的 - 转换为轮廓/字形.
为许多科学期刊进行页面制作的公司的人们使用不同的"嵌入"定义.他们希望文本在EPS文件中保留为文本,但要将字体定义包含在EPS文件中.这样他们就不需要原始字体,但可以在准备EPS图像进行发布时调整拼写,字体大小甚至更改字体.
我的程序员告诉我,"嵌入"的第二个定义是我们无法使用的Adobe特定方法.
所以我的问题是:我们在哪里可以找到规范或示例代码,让我们使用第二个定义将字体嵌入到EPS文件中(将文本保留为文本并包含TrueType字体定义)?
你能告诉我如何使用Ghostscript或Postscript将TIFF转换为PDF?
我试着使用这个命令:
gswin32c.exe -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=o.pdf test.tif
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
它会产生错误:
GPL Ghostscript 9.06 (2012-08-08) Copyright (C) 2012 Artifex Software, Inc. All rights reserved. This software comes with NO WARRANTY: see the file PUBLIC for details. Error: /undefined in II* Operand stack: Execution stack: %interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_push 1910 1 3 %oparray_pop 1909 1 3 %oparray_pop 1893 1 3 %oparray_pop 1787 1 3 %oparray_pop --nostringval-- %errorexec_pop .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push …
我有一个.woff字体在Windows平台上渲染得很差.我怀疑这可能是由于缺乏提示信息,但我需要确定.
你能推荐一种可以检查字体文件并告诉我是否存在提示指标的工具吗?