Es ist nicht klar, was Sie unter "Qualitätsverlust" verstehen. Das könnte viele verschiedene Dinge bedeuten. Könnten Sie ein paar Beispiele zur Veranschaulichung posten? Vielleicht schneiden Sie den gleichen Abschnitt aus den Versionen mit schlechter Qualität und guter Qualität (als PNG, um weitere Qualitätsverluste zu vermeiden).
Möglicherweise müssen Sie verwenden -density
, um die Konvertierung mit einer höheren Auflösung durchzuführen:
convert -density 300 file.pdf page_%04d.jpg
(Sie können voranstellen -units PixelsPerInch
oder -units PixelsPerCentimeter
bei Bedarf. Meine Kopie ist standardmäßig ppi.)
Update: Wie Sie bereits betont haben, ist gscan2pdf
(wie Sie es verwenden) nur ein Wrapper für pdfimages
(von Poppler ). pdfimages
tut nicht das Gleiche convert
wie bei einer PDF-Eingabe.
convert
Nimmt die PDF-Datei, rendert sie mit einer bestimmten Auflösung und verwendet die resultierende Bitmap als Quellbild.
pdfimages
Durchsucht die PDF-Datei nach eingebetteten Bitmap-Bildern und exportiert sie in eine Datei. Text- oder Vektorzeichnungsbefehle in der PDF-Datei werden einfach ignoriert.
Wenn Sie also eine PDF-Datei haben, die nur eine Reihe von Bitmaps umschließt, pdfimages
können Sie sie viel besser extrahieren, da Sie die Rohdaten in ihrer ursprünglichen Größe erhalten. Wahrscheinlich möchten Sie diese -j
Option auch verwenden pdfimages
, da eine PDF-Datei unformatierte JPEG-Daten enthalten kann. Standardmäßig pdfimages
wird alles in das PNM-Format konvertiert, und das Konvertieren von JPEG> PPM> JPEG ist ein verlustreicher Prozess.
Also versuche
pdfimages -j file.pdf page
Möglicherweise müssen Sie dem ein convert
bis- .jpg
Zeichen hinzufügen (je nachdem, welches Bitmap-Format die PDF-Datei verwendet hat).
Ich habe diesen Befehl an einem PDF ausprobiert, das ich selbst aus einer Folge von JPEG-Bildern erstellt habe. Die extrahierten JPEGs waren Byte für Byte identisch mit den Quellbildern. Höhere Qualität kann man nicht erreichen.