扫描的pdf文件的分辨率是多少?


4
  1. 我使用佳能扫描仪扫描了一些文档,分辨率指定为300。

    我将其保存为pdf文件,然后通过ImageMagick检查了pdf文件的分辨率

    identify -verbose my.pdf
    

    在输出中,它说的每一页都会返回

    Resolution: 72x72
    

    这不是我之前用扫描仪指定的300。为什么不同?注意:如果我将其另存为jpg文件,并且使用Xerox workCenter,则存在相同的问题。

  2. 当我使用Adobe Premium Pro OCR我的pdf文件时,它使我可以指定从几个选项(72、300、600)将pdf文件降采样到的分辨率。如果我不希望OCRed pdf文件的分辨率低于原始pdf文件的分辨率,如何找到pdf文件的分辨率,以及在Adobe Premium Pro中为OCR选择哪种分辨率选项?

谢谢。

Answers:


4

PDF是矢量图形文档。可以以任何分辨率渲染。

嵌入PDF文档中的光栅图像(如基本扫描文档中的典型图像)通常具有分辨率(在纸上打印时,一英寸的像素数)。一个这样的PDF文档可能包含其中的几张图像(如果是多页文档,则可能具有这些图像),它们的分辨率和方向可能不同。

这不是ImageMagick的identify -v报告。72dpi是它用来将PDF转换为光栅图像以报告其像素信息的分辨率。

您会注意到它实际上在运行:gs ... -r72x72 ...为此。

pdfimages 可以报​​告PDF文档中的所有光栅图像:

$ pdfimages -list scan.pdf
page   num  type   width height color comp bpc  enc interp  object ID
---------------------------------------------------------------------
   1     0 image    1219  1707  rgb     3   8  jpeg   no         8  0
$ qpdf --show-pages --with-images scan.pdf
page 1: 3 0 R
  images:
    /Im0: 8 0 R, 1219 x 1707
  content:
    4 0 R

这给了您以像素为单位的大小,但没有打印图像的框的大小(英寸mminch),因此您将无法获得分辨率。

但是,从对象ID(8 0上面)中,您可以找到容器的尺寸:

$ mutool show scan.pdf grep | grep 'Im0 8 0'
scan.pdf:3: <</Contents 4 0 R/CropBox[0 0 595 842]/MediaBox[0 0 595 842]/Parent 2 0 R/Resources<</XObject<</Im0 8 0 R>>/ProcSet 6 0 R>>/Thumb 11 0 R/Type/Page>>

因此,在这里,我们知道图像是在595x842磅(点是1/72英寸)上渲染的。

因此我们可以得出x和y分辨率:

$ echo "$((1219 * 72 / 595))dpi" "$((1707 * 72 / 842))dpi"
147dpi 145dpi

请注意,当以JPG格式嵌入时,图像可能具有指定分辨率的EXIF标头。

您可以提取图像以找出答案:

$ exiftool -XResolution -YResolution <(qpdf --show-object=8 --raw-stream-data scan.pdf)
X Resolution                    : 72
Y Resolution                    : 72

在这里,他们不匹配。

您也可以提取图像,然后使用with pdfimages并将其传递给OCR,这样在将其自身转换为光栅图像之前,不必决定分辨率。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.