【问题标题】:How does PS/PDF store and compress bitmaps?PS/PDF 如何存储和压缩位图?
【发布时间】:2009-04-03 08:21:41
【问题描述】:

我正在试验一个系统来扫描字母并将扫描的位图转换为 PDF,目标是获得高分辨率和较小的 PDF 文件大小。

我正在使用扫描仪、用于位图操作的 GIMP 和用于位图到 PDF 转换的 ImageMagick 进行原型设计。

我的流程如下:

  • 以 3x8 位颜色、600 DPI 扫描, LZW 压缩的真彩色 TIFF 文件 大小约为 8 Mb。

  • 使用 GIMP 将位图转换为索引 典型颜色表为 4 的图像 到 8 种颜色。这使得图像可更好地压缩。

  • 使用 ImageMagick 转换 LZW 压缩索引 TIFF 文件 PDF, 每页大约 500K。

现在为了使图像更好地压缩,我可以使位图更易于压缩。在此进行实验之前,我想知道 PS/PDF 是如何存储位图的。

PS/PDF 中的位图是否经过运行长度编码?然后我会通过从位图行中删除单个像素来获得压缩。

您有进一步优化的想法吗?

你知道在 PS/PDF 中对位图存储格式的引用吗?

【问题讨论】:

    标签: pdf pdf-generation postscript


    【解决方案1】:

    PDF支持多种图片压缩方式,见:http://en.wikipedia.org/wiki/Pdf#Raster_images

    我认为您可以使用 imagemagick -compress 选项指定使用哪一个:http://www.imagemagick.org/script/command-line-options.php#compress

    【讨论】:

      【解决方案2】:

      一些公司(Luratech 和 CamiNova 是我所知道的唯一一家)制作 PDF 格式的“混合光栅内容”模型。这些文件可以在标准的 Adob​​e Reader 中查看,但非常非常小——与 DjVu 相当。

      “混合光栅内容”意味着他们将图像分割成高分辨率的黑白蒙版(硬边、线条、字母)和低分辨率的平滑色调图像(背景图片)。使用双色调压缩算法(可能是 JBIG2)存储蒙版,使用 JP2K(可能)压缩平滑色调图像。

      【讨论】:

        【解决方案3】:

        对于位图,IIRC,PDF 使用 deflate。但是PDF也可以存储更具体的图像压缩算法,比如JPEG(有损)、CCITT(无损)、JBIG2(有损和无损)和JPX(JPEG2000的,有损和无损)。

        【讨论】:

          【解决方案4】:

          Adobe's PDF reference 可能是一个不错的起点。从非常粗略的角度看,看起来图像是未压缩存储的,但感觉根本不对。它还可以链接到外部图像,例如 JPEG。

          【讨论】:

            【解决方案5】:

            压缩方法通常由创建 PDF 的工具选择,您可能对其控制有限。

            如果您有 Acrobat 9.0,则有一个非常不错的“隐藏”功能,可让您查看 PDF 中的对象树(您对资源下的 XObjects 感兴趣)。在http://pdf.jpedal.org/java-pdf-blog/bid/10479/Viewing-PDF-objects 有一个关于使用它的简短博客

            【讨论】:

              猜你喜欢
              • 2018-02-14
              • 2014-01-03
              • 1970-01-01
              • 1970-01-01
              • 2015-04-23
              • 1970-01-01
              • 2022-01-06
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多