11

当我看到这种输出时,我的胃在翻腾。

http://www.freeimagehosting.net/uploads/e1097a5a10.jpg

这是我的命令,正如Best way to convert pdf files to tiff files所建议的那样

gswin32c.exe -q -dNOPAUSE -sDEVICE=tiffg4 -sOutputFile=a.tif a.pdf -c quit

我究竟做错了什么?

(不考虑商业产品)

4

7 回答 7

15

tiffg4 是一个黑白输出设备。您应该使用 tiff24nc 或 tiff12nc 作为彩色 PDF 的输出设备 - 请参阅ghostscript 输出设备。这些将是未压缩的,但您可以通过 imagemagick 或类似方法将生成的 TIFF 重新保存为压缩的 TIFF。

于 2008-10-21T11:21:07.620 回答
11

我使用 ImageMagick 已经有一段时间了。这是一个很好的工具,有很多功能。

安装ImageMagick并运行以下命令。这是我在 Linux 上使用的,您可能需要更换convert为正确的。

以下命令将 PDF 转换为CCITT Group 3标准 TIF(传真标准):

convert -define quantum:polarity=min-is-white \
        -endian MSB \
        -units PixelsPerInch \
        -density 204x196 \
        -monochrome \
        -compress Fax \
        -sample 1728 \
        "input.pdf" "output.tif"

您也可以使用GraphicsMagick,它也类似于 ImageMagick,但 ImageMagick 更关注质量而不是速度。

于 2010-12-13T09:31:31.710 回答
2

与建议的其他帖子一样,使用颜色格式(例如 -sDEVICE=tiff24nc)并指定更高的分辨率(例如 -r600x600):

gswin32c.exe -q -dNOPAUSE -r600 -sDEVICE=tiff24nc -sOutputFile=a.tif a.pdf -c quit
于 2011-09-19T05:23:04.647 回答
1

传真非常好!;-)

如果您需要彩色副本,danio 的答案可能是最好的。

我还注意到,从链接的线程中,您省略了为输出指定 DPI,因此看起来很糟糕......如果您需要纯抖动的 B&W,您应该使用更高的分辨率。

我还使用NConvert得到了一个好看的图像

nconvert -page 1 -out tiff -dpi 200 -c 2 -o c.tif FMD.pdf

我提到它是为了记录,因为我认为您需要许可证才能重新分发它(否则它是免费供个人使用的)。

于 2008-10-21T11:58:46.920 回答
1

谢谢大家,这就是我最终得到的

     os.popen(' '.join([
                       self._ghostscriptPath + 'gswin32c.exe', 
                       '-q',
                       '-dNOPAUSE',
                       '-dBATCH',
                       '-r800',
                       '-sDEVICE=tiffg4',
                       '-sPAPERSIZE=a4',
                       '-sOutputFile=%s %s' % (tifDest, pdfSource),
                       ]))
于 2008-10-22T04:50:35.147 回答
1

setori 的命令没有指定用于tiffg4输出的分辨率。结果是:Ghostscript 将对该输出使用其默认设置,即 204x196dpi。

为了将分辨率提高到 600dpi,添加一个-r600命令行参数:

gswin32c.exe ^
   -o output.tiff ^
   -sDEVICE=tiffg4 ^
   -r600 ^
    input.pdf

另请注意,TIFFG4 是标准传真格式,因此它仅使用黑白/灰度,但没有颜色。

@jeff:你有没有尝试过-dDITHERPPI=<lpi>Ghostscript 的参数?( lpi的合理值是 N/5 到 N/20,其中 N 是 dpi 中的分辨率。因此请-r600尝试使用-dDITHERPPI=30to dDITHERPPI=120)。

于 2010-06-05T18:24:09.310 回答
0

我在传真页面上遇到了同样的问题。

我在 php 中使用了 Imagick,这个命令修复了它的外观。

$Imagick->blackThresholdImage('grey');

我没有看到任何使用“gs”的阈值选项,但转换也可能对您有用。

convert a.pdf -threshold 60% a.tif
于 2012-05-01T19:54:33.047 回答