gs -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dBATCH \
-sDEVICE=pdfwrite -sOutputFile=output.pdf input.pdf
Run Code Online (Sandbox Code Playgroud)
我正在使用(尝试无论如何)使用Ghostscript来减少我的PDF文件大小.上面的命令看起来像它的工作,它大大减少了文件大小,但随后几个字段出现乱码.至于我可以追踪它,它正在进行字体替换.IE,同一文本=相同的乱码文本.
当它到达我时,字体嵌入在PDF中.另外,我试图将所有字体添加到Fontmap中.
任何想法,理想情况下我希望它使用嵌入式字体,而不必更新gs系统字体/编辑字体图等.我正在使用Ubuntu 9.10和嵌入的字体是Windows字体,Arial/TimesNewRoman.
谢谢.
我有一个跨平台应用程序,对于我的Linux和Mac版本,它生成一个postscript文件用于打印报告,然后用CUPS打印它们.它适用于简单的字符和图像,但我希望能够将真正的字体直接嵌入postscript文件中.有谁知道如何做到这一点??此外,我可以编码简单的ascii字符,但我不知道如何编码超出通常的az 0-9的任何字符,像带有重音符号的外来字符.
我有一个基于J2EE的应用程序,我使用报告工具生成PDF格式的输出.我需要一个Java实用程序/工具,可以帮助我将PDF文件转换为postscript格式,以便我可以将其打印到打印机......我的应用程序将在各种操作系统(即Windows/Linux/AIX)上运行平台独立解决方案至关重要.我的报告工具不支持PS格式的输出.请指教...
我试图将两个或多个postscript文件合并为一个.我尝试连接但它不起作用,因为每个postscript文件可能有不同的资源标头.
以前有人这样做过吗?那里有没有图书馆(商业或开源)?我不介意C++,C#甚至Java库.
编辑 这些是大型的postscript文件(超过200 Mb),其目的仅用于彩色打印(不适用于在线查看).
结论
总之,合并两个postscript文件的临时解决方案是选项3或4.
我想在postscript中写一个文件.
到目前为止,我已经能够编写简单的文本,并使用线条和形状.
我现在正试图在文档中添加一些图像.在线搜索后,我似乎找不到任何明确的方法来做到这一点.
下面的剪辑是一个问候世界:
%!PS
/Times
20 selectfont
20 800 moveto
(Hello World!) show
showpage
Run Code Online (Sandbox Code Playgroud)
我想要做的只是通过指定x和y坐标来插入图像(例如PNG,JPG,GIF).
任何帮助将非常感激.
我知道之前已经回答过类似的问题:
......但是,由于他们没有直接回答我的具体问题,我会再试一次.
我想知道,我如何覆盖两个postscript文件:一个 - 一个徽标:
...在另一个之上 - 图形背景:
....在Linux中使用命令行方法.
在此重要的是,图形背景最大程度地保留其原始内容.因此,如果我能以某种方式连接两个原始的postscript文件内容(见下文),我可能会感到最开心 - 但除此之外,我想知道命令行工具如何ghostscript用于此目的.
这是更详细的问题 - 我想在PCB板印刷的顶部添加徽标.我kicad用来开发PCB打印; 完成后,我导出一个带有各个图层的postscript文档.通常,我希望前面的铜层"镜像"; 我经常尝试将.ps输出加载到,比方说,inkscape然后尝试在那里进行镜像.使用inkscape也很方便,因为可以在那里轻松添加徽标(然后将打印和徽标一起镜像).
然而,使用inkscape处理postscript输出是一个昂贵的操作(因为它需要一段时间inkscape来加载,并进行镜像和保存)...虽然,这里的主要显示停止是:处理后,一些维度可能会在输出文件中略微改变inkscape(当目标是打印小于1毫米宽的轨道时,它会产生很大的不同).
因此,假设kicads"Plot"命令有一个镜像选项 - 当然,对于我来说,直接从kicads"Plot"命令"镜像"图层打印要好得多; 输出再次是postscript文件.tmp-Front.ps是这样一个(镜像的)postscript文件的示例.请注意,通常情况下,"铜"部分填充黑色 - 我基本上喜欢在它上面有一个白色徽标.
现在,因为这个打印已经"镜像" - 如果我想在它上面添加一个徽标,我最好还要镜像徽标.所以我开火了inkscape; 和:
我通常将其ghostscript视为命令行工具; 然而,我从不停止对那里存在的大量设置和选项感到惊讶 - 这是因为这ghostscript是一个完整的PostScript语言解释器(我经常忘记).
例如,在查询Ghostscript中输出设备的默认选项/设置(例如'pdfwrite'或'tiffg4') ; 一个人学习如何检索给定输出设备的默认选项.但是,我想知道的是 - 这些选项是否与所谓的PostScript词典相关?
或者,换句话说 - 什么是PostScript词典; 什么设施ghostscript有,查询(并可能)修改这些数据?
我正在寻找一个简单的PostScript解释器来阅读.有哪些开源PostScript解释器?
我当然知道Ghostscript以及xpost.哦,我刚刚找到了ralpage,但它并没有在现代编译器中开箱即用.
所以我有一个使用Java和iText构建的报表系统.使用Scribus创建PDF模板.Java代码使用iText将数据合并到文档中.然后将文件复制到NFS共享,并打印BASH脚本.
我使用acroread将它们转换为PS,然后将PS转换为PS.
FOSS应用程序pdftops非常低效.
我的主要问题是使用iText/Scribus生成的PDF非常大.我最近遇到了acroread pukes的问题,因为它在大型(300多页)文档上达到了4GB的内存使用量.(Adobe在将内容更新为64位时非常缓慢).
现在我可以在Windows上使用的Adobe Reader和使用大大减少文件大小选项或任何其调用,它(> 10倍)减少了PDF的大小(它消除元数据的很多关于表单字段和这样看来),并产生一个基本上是打印图像的PDF.
我的问题是有没有人知道一个很好的解决方案/程序在Linux上做类似的事情.理想情况下,它会优化PDF,减小尺寸并降低PS复杂性,因此打印机可以更快地打印,因为现在需要大约15-20秒的时间打印页面.
所以我想使用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) postscript ×10
ghostscript ×3
pdf ×3
fonts ×2
linux ×2
command-line ×1
cups ×1
dictionary ×1
image ×1
interpreter ×1
itext ×1
java ×1
kicad ×1
optimization ×1
printing ×1
solaris ×1
solaris-10 ×1
stack ×1
types ×1
ubuntu ×1