Ghostscript将PDF转换为大型TIFF

时间:2015-06-26 09:21:20

标签: imagemagick tiff ghostscript pdf-conversion

我想使用Ghostscript将PDF调整为TIFF格式。 我们使用PDF / X-3作为输入,其长度或高度限制为5米。

因此,我想要tiff - 文件尺寸正确,最终分辨率为200DPI

通过将其缩放为更大的格式,例如bigtiff(例如):

gs -sDEVICE=tiff32nc -dNumRenderingThreads=6 -dNOPAUSE -dBATCH -dSAFER \
   -dPDFFitPage -r2000 -dUseCropBox -dUseBigTiff       \
   -sOutputFile=example.tiff test.pdf 

从这里编辑:我的第一个结果是2000 dpi文件

就像把它缩放到正确的像素一样,然后我用exiftool将它改为200DPI:

exiftool -ResolutionUnit="inch" -xResolution="200" -yResolution="200" example.tiff 

然后我得到一个200 DPI的结果tiff,尺寸是我期望的格式的72/200倍。

为了确保我的结果具有真正预期的格式,我将其转换为计算格式:

convert example.tiff -depth 8 -resize 70866x15748\! temp-1.tiff

这是实现目标的最佳方式吗?

基本步骤是:

  1. 将图像分辨率转换为最终尺寸
  2. 将其大小调整为目标尺寸,最终分辨率为200 DPI
  3. 编辑1: 目标是按最佳结果按因子缩放图像。问题是,客户将数据作为PDF提供,并希望打印的文件大10倍。所以我们必须将其扩展到这个维度。因子10是我们在这里做的最大值。 例如。客户希望横幅打印宽6米,高2米。他们主要提供的文件是600毫米×200毫米的矢量格式。  所以我尝试在批处理过程中将它们缩放到正确的尺寸。

    编辑2: 我将问题更新为实际状态

1 个答案:

答案 0 :(得分:0)

您尝试创建708662像素宽且157480像素高的TIFF是疯狂的!

一点点的计算应该告诉你这些 ~104 GigaPixels

鉴于您还要求tiff32nc输出,这需要每像素32位(4字节)(每个请求的CMYK通道为8位)。

你是否在该系统上拥有416 GigaByte的硬盘空间,更不用说416 GigaByte的RAM了?! (我希望你不在32位系统......) 如果您确实成功生成了该文件,您打算如何处理该文件以进行进一步处理?哪个图形/图像处理软件甚至会开始打开它?!

简而言之:在尝试让Ghostscript生成这样一个怪物时,我一点都不会感到惊讶!

(另外:当您还使用-rXXX时,请勿使用-gNNNxMMM-gNNNxMMM已设置绝对图片尺寸(以像素为单位) - 设置-rXXX为同时也没用。)

(是的,我知道:TIFF通常是压缩的。所以我上面的例子计算是误导性的。故意......但是,当从磁盘读取压缩的TIFF时,必须在内存中扩展它以便渲染它....)