¿Cuál es la resolución de un archivo pdf escaneado?

¿Cuál es la resolución de un archivo pdf escaneado?
  1. Escaneé algunos documentos con un escáner Canon, con una resolución especificada de 300.

    Lo guardé en un archivo pdf. Luego verifiqué la resolución del archivo pdf, por ImageMagick

    identify -verbose my.pdf
    

    En el resultado regresa, para cada página dice

    Resolution: 72x72
    

    que no es 300 que especifiqué anteriormente con el escáner. ¿Por qué es diferente? Nota: El mismo problema si lo guardé como un archivo jpg y si uso un Xerox workCenter.

  2. Cuando uso Adobe Premium Pro para realizar OCR en mi archivo pdf, me permite especificar a qué resolución reducirá la resolución del archivo pdf entre varias opciones (72, 300, 600). Si no quiero que el archivo PDF con OCR tenga menos resolución que el archivo PDF original, ¿cómo puedo saber la resolución del archivo PDF y qué opción de resolución debo elegir para OCR en Adobe Premium Pro?

Gracias.

Respuesta1

PDF es un documento de gráficos vectoriales. Se puede renderizar en cualquier resolución.

Una imagen rasterizada incrustada en un documento PDF (como es típico de un documento escaneado básico) normalmente tendrá una resolución (cuántos píxeles hay en una pulgada del documento cuando se imprime en papel). Uno de esos documentos PDF puede tener varias de esas imágenes (las tendrá si es un documento de varias páginas) posiblemente con diferentes resoluciones y orientaciones.

Eso no es lo que informa ImageMagick identify -v. Esos 72 ppp es la resolución que utiliza para convertir el PDF en una imagen rasterizada para informar información de píxeles en él.

Notarás que realmente se ejecuta: gs ... -r72x72 ...para eso.

pdfimagesPuede informar todas las imágenes rasterizadas en un documento 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

Eso le da el tamaño en píxeles, pero no el tamaño (en mmo inch) del cuadro en el que se imprimiría la imagen, por lo que no obtendrá la resolución de eso.

Sin embargo, a partir del ID del objeto ( 8 0arriba), puede averiguar la dimensión del contenedor:

$ 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>>

Entonces, aquí sabemos que la imagen se representa en 595x842 pt (un punto es 1/72 de pulgada).

Entonces podemos derivar la resolución xey:

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

Tenga en cuenta que cuando se incrustan como JPG, las imágenes pueden tener un encabezado EXIF ​​que especifica la resolución.

Puedes extraer las imágenes para descubrirlo:

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

Aunque aquí no coinciden.

También puede extraer las imágenes y pdfimagespasarlas a su OCR para que no tenga que decidir una resolución antes de convertirse en una imagen rasterizada.

información relacionada