Welche Auflösung hat eine gescannte PDF-Datei?

Welche Auflösung hat eine gescannte PDF-Datei?
  1. Ich habe einige Dokumente mit einem Canon-Scanner gescannt, die Auflösung war mit 300 angegeben.

    Ich habe es in eine PDF-Datei gespeichert Dann habe ich die Auflösung der PDF-Datei mit ImageMagick überprüft

    identify -verbose my.pdf
    

    In der Ausgabe wird für jede Seite Folgendes zurückgegeben:

    Resolution: 72x72
    

    Das ist nicht 300, wie ich es vorher für den Scanner angegeben habe. Warum ist es anders? Hinweis: Dasselbe Problem, wenn ich es als JPG-Datei speichere und ein Xerox WorkCenter verwende.

  2. Wenn ich Adobe Premium Pro zum OCR meiner PDF-Datei verwende, kann ich aus mehreren Optionen (72, 300, 600) die Auflösung angeben, auf die die PDF-Datei heruntergerechnet wird. Wenn ich nicht möchte, dass die OCR-PDF-Datei eine geringere Auflösung als die ursprüngliche PDF-Datei hat, wie finde ich dann die Auflösung der PDF-Datei heraus und welche Auflösungsoption soll ich für OCR in Adobe Premium Pro wählen?

Danke.

Antwort1

PDF ist ein Vektorgrafikdokument. Es kann in jeder beliebigen Auflösung wiedergegeben werden.

Ein in ein PDF-Dokument eingebettetes Rasterbild (wie es bei einem einfachen gescannten Dokument üblich ist) hat normalerweise eine Auflösung (wie viele Pixel ein Zoll des Dokuments beim Ausdrucken auf Papier hat). Ein solches PDF-Dokument kann mehrere dieser Bilder enthalten (wenn es sich um ein mehrseitiges Dokument handelt), möglicherweise mit unterschiedlichen Auflösungen und Ausrichtungen.

Das ist nicht das, was ImageMagick identify -vmeldet. Diese 72 dpi ist die Auflösung, die es verwendet, um das PDF in ein Rasterbild umzuwandeln, um Pixelinformationen darüber zu melden.

Sie werden feststellen, dass es tatsächlich läuft: gs ... -r72x72 ...dafür.

pdfimageskann alle Rasterbilder in einem PDF-Dokument ausgeben:

$ 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

Dadurch erhalten Sie die Größe in Pixeln, jedoch nicht die Größe (in mmoder inch) des Felds, in dem das Bild gedruckt würde. Daher können Sie daraus nicht die Auflösung ableiten.

Aus der Objekt-ID ( 8 0siehe oben) können Sie jedoch die Dimension des Containers ermitteln:

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

Wir wissen also, dass das Bild auf 595 x 842 pt gerendert wird (ein Punkt entspricht 1/72 Zoll).

So können wir die x- und y-Auflösung ableiten:

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

Beachten Sie, dass die Bilder beim Einbetten als JPG einen EXIF-Header haben können, der die Auflösung angibt.

Um das herauszufinden, können Sie die Bilder extrahieren:

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

Hier passen sie allerdings nicht zusammen.

Sie können die Bilder auch extrahieren und pdfimagesan Ihre OCR übergeben, sodass diese sich vor der Konvertierung in ein Rasterbild nicht für eine Auflösung entscheiden muss.

verwandte Informationen