linux – 如何使ghostscript从postscript文件输出单个特定页面作为png?

我试图将ghostscript用于其预期目的,以解释postscript文件和输出png.我想要一个命令,将单个特定页面从多页ps文件转换为单个png.我已经在infile是pdf文件的情况下完成了这个,但是当infile是ps时却没有.

此行将ps转换为由连接的png文件组成的文件.

gs -dSAFER -dBATCH -sDEVICE = png256 -r96x96 -sOutputFile = out.png in.ps

这将从pdf中获取单个特定页面并将其转换为png.

gs -q -dSAFER -dBATCH -dFirstPage = 2 -dLastPage = 2 -sDEVICE = png256 -SOut = fileout.png in.pdf

简单地将dFirstPage =标志放在后脚本输入案例中什么都不做.输出与标志不存在的输出相同.

解决方法

与PDF不同,并非所有postscript文件都可以按随机顺序访问其页面.可能是你正在尝试处理的文件的情况. (否则标志应标记为“对文档中的postscript不起作用”).

我认为最简单的方法是首先将PS文件转换为PDF,广告然后从生成的PDF中提取页面.

由于你在Linux上,你可以使用帮助脚本“ps2pdf”,它使用下面的ghostscript(但在大多数发行版中是“ps-tools”或类似名称包的一部分) – 或者只是找出gs命令行来制作转换.

另一种方法是生成所有页面,直到你想要的最后一页,并删除第一个不需要的页面.

这是因为postscript本身的性质:postscritp文件只是一个计算机程序,它设置了很多内部状态,呈现页面并调用showpage函数 – 然后开始渲染下一页 – 所以,取决于文件,外部工具无法知道哪些语句是所有页面的状态的一部分,哪些只是用于呈现页面.在较新的规范下,有一些可选的数据结构,继承自PDF规范,可用于为独立页面调用正确的代码,但很少有文件可以携带.

相关文章

/etc/sysctl.conf这个目录主要是配置一些系统信息,/etc/sys...
1.作用 useradd或adduser命令用来建立用户帐号和创建用户的起...
它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅...
不管是我们在安装软件还是监测软件的使用性能,我们都要随时...
装好Tomcat7后,发现除了本机能访问外界访问不了,岂有此理。...
修改防火墙配置需要修改 /etc/sysconfig/iptables 这个文件,...