Konvertieren Sie PDF in Bilder mit hoher Auflösung

325

Ich versuche, mit dem Befehlszeilenprogramm converteine PDF-Datei in ein Bild (JPEG oder PNG) aufzunehmen. Hier ist eine der PDFs , die ich konvertieren möchte.

Ich möchte, dass das Programm den überschüssigen Leerraum abschneidet und ein Bild liefert, das hoch genug ist, damit die hochgestellten Zeichen problemlos gelesen werden können.

Dies ist mein derzeit bester Versuch . Wie Sie sehen können, funktioniert das Trimmen einwandfrei. Ich muss nur die Auflösung etwas schärfen. Dies ist der Befehl, den ich verwende:

convert -trim 24.pdf -resize 500% -quality 100 -sharpen 0x1.0 24-11.jpg

Ich habe versucht, folgende bewusste Entscheidungen zu treffen:

  • Ändern Sie die Größe größer (hat keinen Einfluss auf die Auflösung)
  • Machen Sie die Qualität so hoch wie möglich
  • Verwenden Sie die -sharpen(Ich habe eine Reihe von Werten ausprobiert)

Anregungen, um die Auflösung des Bildes im endgültigen PNG / JPEG höher zu bekommen, wäre sehr dankbar!

JBWhitmore
quelle
Ich weiß nicht, Sie könnten auch versuchen, Link ...
Karnok
1
Siehe auch: askubuntu.com/a/50180/64957
Dave Jarvis
Wenn Sie auf einem Mac arbeiten, sehen Sie sich die Manpage für sipsdas "skriptfähige Bildverarbeitungssystem" an. Es ist ein in macOS integrierter Befehlszeilen-Bildeditor, der mit PDFs und vielen anderen Bildtypen funktioniert.
Ghoti
@ghoti sips konvertiert nur die erste Seite einer PDF-Datei in ein Bild.
Benwiggy

Antworten:

385

Es scheint, dass Folgendes funktioniert:

convert           \
   -verbose       \
   -density 150   \
   -trim          \
    test.pdf      \
   -quality 100   \
   -flatten       \
   -sharpen 0x1.0 \
    24-18.jpg

Es ergibt sich das linke Bild . Vergleichen Sie dies mit dem Ergebnis meines ursprünglichen Befehls ( das Bild rechts ):

  

(Um die Unterschiede zwischen den beiden wirklich zu sehen und zu schätzen, klicken Sie mit der rechten Maustaste auf die beiden und wählen Sie "Bild in neuem Tab öffnen ..." .)

Beachten Sie auch die folgenden Fakten:

  • Das schlechtere, verschwommene Bild rechts hat eine Dateigröße von 1,941.702 Bytes (1,85 MByte). Die Auflösung beträgt 3060 x 3960 Pixel bei Verwendung eines 16-Bit-RGB-Farbraums.
  • Das bessere, scharfe Bild links hat eine Dateigröße von 337,879 Byte (330 kByte). Die Auflösung beträgt 758 x 996 Pixel, wobei der 8-Bit-Grau-Farbraum verwendet wird.

Es ist also nicht erforderlich, die Größe zu ändern. füge die -densityFlagge hinzu. Der Dichtewert 150 ist seltsam - das Ausprobieren eines Wertebereichs führt zu einem schlechter aussehenden Bild in beide Richtungen!

JBWhitmore
quelle
76
Der densityParameter ist insofern etwas Besonderes, als er vor der Eingabedatei stehen muss. Da PDF ein vektorbasiertes Dateiformat ist, das keine (viel) Vorstellung von Pixeln hat, heißt es so etwas wie "Seite ist 8 x 12 Zoll". Wenn Sie Pixel möchten, verwenden Sie die densityEinstellung, um anzugeben, wie viele Pixel pro Zoll Sie in der Ausgabe erhalten möchten. Z.B. mit 150 würden Sie 8x150 = 1200 mal 12x150 = 1800 Pixel im resultierenden Bild erhalten. Dies ist auch die Anzahl der Pixel, mit denen die Einstellungen für Scharfzeichnen, Kontrast, Komprimierung usw. arbeiten.
Daniel Schneller
8
Unter Mac OS kann dies zu einem schwarzen Hintergrund führen (siehe stackoverflow.com/questions/10934456/… ). Um dies zu beheben, fügen Sie hinzu -flatten.
Rolf
2
Ich habe einen schwarzen Hintergrund unter Mac OS, als ich versuchte, PDF in PNG zu konvertieren. Das Hinzufügen von -flatten löste das Problem.
Olala
4
Beeindruckend! Verwenden Sie einfach die Option -densityund -flatten, um die Größe eines PDFs (auf ein anderes PDF) zu reduzieren. Die -flattenOption hilft wirklich sehr bei der Reduzierung der Gesamtgröße. In meinem Fall ohne Sehstörungen.
Parvus
2
Das -densityFlag liefert wahrscheinlich schlechtere Ergebnisse bei höheren Werten, wenn die Qualität des Startbilds niedriger war.
Parvus
150

Persönlich mag ich das.

convert -density 300 -trim test.pdf -quality 100 test.jpg

Es ist etwas mehr als doppelt so groß wie die Datei, aber für mich sieht es besser aus.

-density 300 Legt die Auflösung fest, mit der das PDF gerendert wird.

-trim Entfernt alle Kantenpixel, die dieselbe Farbe wie die Eckpixel haben.

-quality 100 Stellt die JPEG-Komprimierungsqualität auf die höchste Qualität ein.

Dinge wie -sharpenfunktionieren nicht gut mit Text, weil sie Dinge rückgängig machen, die Ihr Schriftwiedergabesystem getan hat, um es lesbarer zu machen.

Wenn Sie möchten, dass es in die Luft gesprengt wird, verwenden Sie hier die Größenänderung und möglicherweise einen größeren dpi-Wert von so etwas. targetDPI * scalingFactor Dadurch wird das PDF in der von Ihnen beabsichtigten Auflösung / Größe gerendert.

Beschreibungen der Parameter auf imagemagick.org finden Sie hier

Majinnaibu
quelle
Es ist doppelt so groß, vor allem, weil die Ausgabedichte verdoppelt wurde und die JPG-Komprimierungsqualität auf max eingestellt ist (also nicht viel Komprimierung).
Rivimey
Woher convertwissen wir, wie viele Seiten konvertiert wurden?
Kiran Reddy
Äh, das ist definitiv der richtige Weg. Erhöhen Sie die Quellendichte und entfernen Sie die -sharpen. Die Qualität ist viel viel besser als bei den Standardeinstellungen und viel natürlicher als bei -sharpen.
Joshua Pinter
19

Normalerweise extrahiere ich das eingebettete Bild mit 'pdfimages' in der nativen Auflösung und verwende dann die Konvertierung von ImageMagick in das gewünschte Format:

$ pdfimages -list fileName.pdf
$ pdfimages fileName.pdf fileName   # save in .ppm format
$ convert fileName-000.ppm fileName-000.png

Dadurch wird die beste und kleinste Ergebnisdatei generiert.

Hinweis: Für verlustbehaftete JPG-eingebettete Bilder mussten Sie -j verwenden:

$ pdfimages -j fileName.pdf fileName   # save in .jpg format

Mit dem neuesten Poppler können Sie -all verwenden, das verlustbehaftet als JPG und verlustfrei als PNG spart

Auf der wenig bereitgestellten Win-Plattform mussten Sie eine aktuelle (0.37 2015) 'poppler-util'-Binärdatei von folgender Adresse herunterladen: http://blog.alivate.com.au/poppler-windows/

Valerio
quelle
Nur eine kleine Korrektur: Der zweite Befehl im ersten Codeblock sollte pdftoppm nicht mitpdfimages
satyanarayan rao beginnen.
Nein, ältere PDF-Bilder speichern extrahierte Bilder in ppm wie pdftoppm, und pdftoppm hatte nie die Option -list. Aktuelle PDF-Bilder können direkt in PNG und JPG mit -all gespeichert werden, wie im Hinweis angegeben
Valerio
18

Ich verwende pdftoppmin der Befehlszeile, um das ursprüngliche Bild zu erhalten, normalerweise mit einer Auflösung von 300 dpi pdftoppm -r 300. Dann verwende convertich es, um das Trimmen und die PNG-Konvertierung durchzuführen .

Norman Ramsey
quelle
1
Ohne Imagemagick zu verwenden, scheint diese Lösung am ehesten einer transparenten Konvertierung zu entsprechen. pdftoppmkann auch JPEGs und PNGs ausgeben.
Aaron Brick
13

Ich habe festgestellt, dass es sowohl schneller als auch stabiler ist, wenn große PDF-Dateien stapelweise in PNGs und JPGs verarbeitet werden, um den zugrunde liegenden gsBefehl (auch bekannt als Ghostscript) zu convertverwenden.

Sie können den Befehl in der Ausgabe von sehen convert -verboseund dort sind einige weitere Optimierungen möglich (YMMV), über die nur schwer oder gar nicht direkt zugegriffen werden kann convert.

Es wäre jedoch schwieriger, das Trimmen und Schärfen mit gsYMMV durchzuführen.

Codierer
quelle
9

Es gibt Ihnen auch gute Ergebnisse:

exec("convert -geometry 1600x1600 -density 200x200 -quality 100 test.pdf test_image.jpg");
Preet Sandhu
quelle
7

Linux-Benutzer hier: Ich habe das convertBefehlszeilenprogramm (für PDF zu PNG) ausprobiert und war mit den Ergebnissen nicht zufrieden. Ich fand das einfacher, mit einem besseren Ergebnis:

  • Extrahieren Sie die PDF-Seite (n) mit pdftk
    • z.B: pdftk file.pdf cat 3 output page3.pdf
  • Öffnen (importieren) Sie das PDF mit GIMP
    • wichtig: Ändern Sie den Import Resolutionvon 100nach 300oder600 pixel/in
  • beim GIMPExport als PNG (Dateierweiterung in .png ändern)

Bearbeiten:

Bild hinzugefügt, wie in der angefordert Comments. Konvertierter Befehl verwendet:

convert -density 300 -trim struct2vec.pdf -quality 100 struct2vec.png

GIMP: importiert mit 300 dpi (px / in); exportiert als PNG-Komprimierungsstufe 3.

Ich habe GIMP nicht in der Befehlszeile verwendet (siehe: mein Kommentar unten).

pdf2png

Geben Sie hier die Bildbeschreibung ein

Victoria Stuart
quelle
1
Kann dies automatisiert werden, wenn Sie Tausende von Seiten haben?
JBWhitmore
@JBWhitmore: gute Frage. Sicherlich wäre es einfach, den Befehl pdftk zu skripten, da er sich bereits in der Befehlszeile befindet. Ich habe eine sehr schnelle Google-Suche durchgeführt und festgestellt, dass GIMP einen Batch-Modus hat (ich habe es nicht ausprobiert, aber es sollte auch skriptfähig sein): gimp.org/tutorials/Basic_Batch
Victoria Stuart
1
@JBWhitmore ein Beispielskript zur Automatisierung dieser Konvertierung wird auf dieser Frage / Antwort gezeigt: unix.stackexchange.com/questions/121293/…
tsherwen
1
@tsherwen, Wenn ich diesen Link richtig gelesen habe, kann ich den Konvertierungsbefehl automatisieren. Ich bin nicht verwirrt, wie das geht. In dieser Antwort heißt es jedoch, GIMP als einen der Schritte zu verwenden - und weder diese Antwort noch die Verknüpfung scheinen zu zeigen, wie dies automatisiert werden kann.
JBWhitmore
1
@JBWhitmore. Ich habe fälschlicherweise nur an die Frage gedacht convert. Ich habe nur den Teil dieser Antwort convertund Ihre Frage beim Lesen Ihres Automatisierungskommentars gesehen. Vielen Dank für Ihre Antwort später in diesem Thread, den ich mit der von mir verknüpften Lösung kombiniert und ein anderes Problem gelöst habe.
Tsherwen
6

In ImageMagick können Sie "Supersampling" durchführen. Sie geben eine große Dichte an und ändern dann die Größe für die endgültige Ausgabegröße. Zum Beispiel mit Ihrem Bild:

convert -density 600 test.pdf -background white -flatten -resize 25% test.png


Geben Sie hier die Bildbeschreibung ein

Laden Sie das Bild herunter, um es zum Vergleich in voller Auflösung anzuzeigen.

Ich empfehle nicht, in JPG zu speichern, wenn Sie eine weitere Verarbeitung erwarten.

Wenn Sie möchten, dass die Ausgabe dieselbe Größe wie die Eingabe hat, ändern Sie die Größe auf das Gegenteil des Verhältnisses Ihrer Dichte zu 72. Beispiel: -dichte 288 und -größe 25%. 288 = 4 · 72 und 25% = 1/4

Je größer die Dichte, desto besser die resultierende Qualität, die Verarbeitung dauert jedoch länger.

fmw42
quelle
6

Ich hatte wirklich keinen guten Erfolg mit convert[Update Mai 2020: eigentlich: es funktioniert so gut wie nie bei mir], aber ich hatte AUSGEZEICHNETEN Erfolg mit pdftoppm. Hier einige Beispiele für die Erstellung hochwertiger Bilder aus einem PDF:

  1. [Produziert Dateien mit einer Größe von ~ 25 MB pro Seite] Geben Sie das unkomprimierte .tif- Dateiformat mit 300 DPI in einen Ordner namens "images" aus, wobei die Dateien pg-1.tif , pg-2.tif , pg-3.tif , heißen . usw:

    mkdir -p images && pdftoppm -tiff -r 300 mypdf.pdf images/pg
    
  2. [Erzeugt Dateien mit einer Größe von ~ 1 MB pro Seite] Ausgabe im JPG- Format mit 300 DPI :

    mkdir -p images && pdftoppm -jpeg -r 300 mypdf.pdf images/pg
    
  3. [Erzeugt Dateien mit einer Größe von ~ 2 MB pro Seite] Ausgabe im JPG- Format bei höchster Qualität (geringste Komprimierung) und immer noch bei 300 DPI :

    mkdir -p images && pdftoppm -jpeg -jpegopt quality=100 -r 300 mypdf.pdf images/pg
    

Weitere Erklärungen, Optionen und Beispiele finden Sie in meiner vollständigen Antwort hier:

/ubuntu/150100/extracting-embedded-images-from-a-pdf/1187844#1187844 .

Verbunden:

  1. [So verwandeln Sie ein PDF in ein durchsuchbares PDF mit pdf2searchablepdf] /ubuntu/473843/how-to-turn-a-pdf-into-a-text-searchable-pdf/1187881#1187881
  2. Vernetzt:
    1. Wie konvertiere ich ein PDF in JPG mit der Kommandozeile unter Linux?
    2. /unix/11835/pdf-to-jpg-without-quality-loss-gscan2pdf/585574#585574
Gabriel Staples
quelle
3

Ein weiterer Vorschlag ist, dass Sie GIMP verwenden können.

Laden Sie einfach die PDF-Datei in GIMP-> als .xcf speichern und Sie können das Bild beliebig bearbeiten.

Armin Mustafa
quelle
9
Der Grund dafür ist, dass ich Tausende von Seiten hatte, die diesen Prozess benötigten.
JBWhitmore
Außerdem rendert GIMP die Seite beim Laden , sodass Sie die Auflösung festlegen möchten, wenn Sie die zu ladenden Seiten auswählen. Es spielt keine Rolle, auf was Sie die Ausgabeparameter einstellen, wenn Sie beim Laden mit der Standardeinstellung von 100 DPI beginnen.
Keith Davies
1

Ich benutze icepdf eine Open Source Java PDF Engine. Überprüfen Sie die Office-Demo .

package image2pdf;

import org.icepdf.core.exceptions.PDFException;
import org.icepdf.core.exceptions.PDFSecurityException;
import org.icepdf.core.pobjects.Document;
import org.icepdf.core.pobjects.Page;
import org.icepdf.core.util.GraphicsRenderingHints;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.awt.image.RenderedImage;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;

public class pdf2image {

   public static void main(String[] args) {

      Document document = new Document();
      try {
         document.setFile("C:\\Users\\Dell\\Desktop\\test.pdf");
      } catch (PDFException ex) {
         System.out.println("Error parsing PDF document " + ex);
      } catch (PDFSecurityException ex) {
         System.out.println("Error encryption not supported " + ex);
      } catch (FileNotFoundException ex) {
         System.out.println("Error file not found " + ex);
      } catch (IOException ex) {
         System.out.println("Error IOException " + ex);
      }

      // save page captures to file.
      float scale = 1.0f;
      float rotation = 0f;

      // Paint each pages content to an image and
      // write the image to file
      for (int i = 0; i < document.getNumberOfPages(); i++) {
         try {
         BufferedImage image = (BufferedImage) document.getPageImage(
             i, GraphicsRenderingHints.PRINT, Page.BOUNDARY_CROPBOX, rotation, scale);

         RenderedImage rendImage = image;
         try {
            System.out.println(" capturing page " + i);
            File file = new File("C:\\Users\\Dell\\Desktop\\test_imageCapture1_" + i + ".png");
            ImageIO.write(rendImage, "png", file);
         } catch (IOException e) {
            e.printStackTrace();
         }
         image.flush();
         }catch(Exception e){
             e.printStackTrace();
         }
      }

      // clean up resources
      document.dispose();
   }
}

Ich habe auch imagemagick und pdftoppm ausprobiert , sowohl pdftoppm als auch icepdf haben eine hohe Auflösung als imagemagick.

Kris Roofe
quelle
1

Bitte beachten Sie, bevor Sie abstimmen. Diese Lösung ist für Gimp über eine grafische Oberfläche und nicht für ImageMagick über eine Befehlszeile vorgesehen. Als Alternative hat sie jedoch einwandfrei funktioniert. Deshalb fand ich es notwendig, sie hier zu teilen.

Befolgen Sie diese einfachen Schritte, um Bilder in einem beliebigen Format aus PDF-Dokumenten zu extrahieren

  1. Laden Sie das GIMP Image Manipulation Program herunter
  2. Öffnen Sie das Programm nach der Installation
  3. Öffnen Sie das PDF-Dokument, aus dem Sie Bilder extrahieren möchten
  4. Wählen Sie nur die Seiten des PDF-Dokuments aus, aus denen Sie Bilder extrahieren möchten. N / B: Wenn Sie nur die Titelbilder benötigen, wählen Sie nur die erste Seite aus.
  5. Klicken Sie auf Öffnen, nachdem Sie die Seiten ausgewählt haben, von denen Sie Bilder extrahieren möchten
  6. Klicken Sie beim Öffnen von GIMP auf das Menü Datei, wenn die Seiten geöffnet werden
  7. Wählen Sie im Menü Datei die Option Exportieren wie
  8. Wählen Sie Ihren bevorzugten Dateityp nach Erweiterung (z. B. PNG) unter dem angezeigten Dialogfeld aus.
  9. Klicken Sie auf Exportieren , um Ihr Bild an den gewünschten Ort zu exportieren.
  10. Sie können dann Ihren Datei-Explorer auf das exportierte Bild überprüfen.

Das ist alles.

ich hoffe das hilft

Versprich Preston
quelle
Die Frage ist für ImageMagick über eine Befehlszeile, nicht für Gimp über eine grafische Oberfläche.
Sidney
0

Die angehängte PNG-Datei sieht sehr unscharf aus. Wenn Sie für jedes Bild, das Sie als PDF-Vorschau erstellt haben, eine zusätzliche Nachbearbeitung benötigen, verringern Sie die Leistung Ihrer Lösung.

2JPEG kann PDF-Dateien, die Sie angehängt haben, in ein schönes, scharfes JPG konvertieren und leere Ränder in einem Aufruf zuschneiden:

2jpeg.exe -src "C:\In\*.*" -dst "C:\Out" -oper Crop method:autocrop
Mikhael
quelle
Die Unschärfe im ursprünglichen PNG hat die Frage in erster Linie inspiriert, und das PNG in der akzeptierten Antwort ist ziemlich klar.
JBWhitmore
0

Verwenden Sie diese Befehlszeile:

convert -geometry 3600x3600 -density 300x300 -quality 100 TEAM\ 4.pdf team4.png

Dadurch sollte die Datei korrekt konvertiert werden, wie Sie es gewünscht haben.

Aleksandrs Bogdanovs
quelle
0

Das folgende Python-Skript funktioniert auf jedem Mac (Snow Leopard und höher). Es kann in der Befehlszeile mit aufeinanderfolgenden PDF-Dateien als Argumente verwendet werden, oder Sie können in Automator eine Aktion zum Ausführen eines Shell-Skripts eingeben und einen Dienst ausführen (Schnellaktion in Mojave).

Sie können die Auflösung des Ausgabebildes im Skript einstellen.

Das Skript und eine Quick - Action können von Github heruntergeladen werden.

#!/usr/bin/python
# coding: utf-8

import os, sys
import Quartz as Quartz
from LaunchServices import (kUTTypeJPEG, kUTTypeTIFF, kUTTypePNG, kCFAllocatorDefault) 

resolution = 300.0 #dpi
scale = resolution/72.0

cs = Quartz.CGColorSpaceCreateWithName(Quartz.kCGColorSpaceSRGB)
whiteColor = Quartz.CGColorCreate(cs, (1, 1, 1, 1))
# Options: kCGImageAlphaNoneSkipLast (no trans), kCGImageAlphaPremultipliedLast 
transparency = Quartz.kCGImageAlphaNoneSkipLast

#Save image to file
def writeImage (image, url, type, options):
    destination = Quartz.CGImageDestinationCreateWithURL(url, type, 1, None)
    Quartz.CGImageDestinationAddImage(destination, image, options)
    Quartz.CGImageDestinationFinalize(destination)
    return

def getFilename(filepath):
    i=0
    newName = filepath
    while os.path.exists(newName):
        i += 1
        newName = filepath + " %02d"%i
    return newName

if __name__ == '__main__':

    for filename in sys.argv[1:]:
        pdf = Quartz.CGPDFDocumentCreateWithProvider(Quartz.CGDataProviderCreateWithFilename(filename))
        numPages = Quartz.CGPDFDocumentGetNumberOfPages(pdf)
        shortName = os.path.splitext(filename)[0]
        prefix = os.path.splitext(os.path.basename(filename))[0]
        folderName = getFilename(shortName)
        try:
            os.mkdir(folderName)
        except:
            print "Can't create directory '%s'"%(folderName)
            sys.exit()

        # For each page, create a file
        for i in range (1, numPages+1):
            page = Quartz.CGPDFDocumentGetPage(pdf, i)
            if page:
        #Get mediabox
                mediaBox = Quartz.CGPDFPageGetBoxRect(page, Quartz.kCGPDFMediaBox)
                x = Quartz.CGRectGetWidth(mediaBox)
                y = Quartz.CGRectGetHeight(mediaBox)
                x *= scale
                y *= scale
                r = Quartz.CGRectMake(0,0,x, y)
        # Create a Bitmap Context, draw a white background and add the PDF
                writeContext = Quartz.CGBitmapContextCreate(None, int(x), int(y), 8, 0, cs, transparency)
                Quartz.CGContextSaveGState (writeContext)
                Quartz.CGContextScaleCTM(writeContext, scale,scale)
                Quartz.CGContextSetFillColorWithColor(writeContext, whiteColor)
                Quartz.CGContextFillRect(writeContext, r)
                Quartz.CGContextDrawPDFPage(writeContext, page)
                Quartz.CGContextRestoreGState(writeContext)
        # Convert to an "Image"
                image = Quartz.CGBitmapContextCreateImage(writeContext) 
        # Create unique filename per page
                outFile = folderName +"/" + prefix + " %03d.png"%i
                url = Quartz.CFURLCreateFromFileSystemRepresentation(kCFAllocatorDefault, outFile, len(outFile), False)
        # kUTTypeJPEG, kUTTypeTIFF, kUTTypePNG
                type = kUTTypePNG
        # See the full range of image properties on Apple's developer pages.
                options = {
                    Quartz.kCGImagePropertyDPIHeight: resolution,
                    Quartz.kCGImagePropertyDPIWidth: resolution
                    }
                writeImage (image, url, type, options)
                del page
benwiggy
quelle
0

Sie können dies in LibreOffice Draw tun (das normalerweise in Ubuntu vorinstalliert ist ):

  1. Öffnen Sie die PDF-Datei in LibreOffice Draw.
  2. Scrollen Sie zu der gewünschten Seite.
  3. Stellen Sie sicher, dass Text- / Bildelemente korrekt platziert sind. Wenn nicht, können Sie sie auf der Seite anpassen / bearbeiten.
  4. Hauptmenü: Datei> Exportieren ...
  5. Wählen Sie das gewünschte Bildformat im Menü unten rechts aus. Ich empfehle PNG.
  6. Benennen Sie Ihre Datei und klicken Sie auf Speichern.
  7. Das Optionsfenster wird angezeigt, in dem Sie Auflösung und Größe anpassen können.
  8. Klicken Sie auf OK und Sie sind fertig.
Ähnliche Bilder
quelle
0

Ich habe pdf2image verwendet . Eine einfache Python-Bibliothek, die wie Charme funktioniert.

Installieren Sie zuerst poppler auf einem Nicht-Linux-Computer. Sie können einfach die Zip herunterladen. Entpacken Sie in Programmdateien und fügen Sie bin zum Maschinenpfad hinzu.

Danach können Sie pdf2image in einer Python-Klasse wie folgt verwenden:

from pdf2image import convert_from_path, convert_from_bytes
images_from_path = convert_from_path(
   inputfile,
   output_folder=outputpath,
   grayscale=True, fmt='jpeg')

Ich bin nicht gut mit Python, konnte aber Exe daraus machen. Später können Sie die exe mit Dateieingabe- und -ausgabeparameter verwenden. Ich habe es in C # verwendet und die Dinge funktionieren gut.

Die Bildqualität ist gut. OCR funktioniert gut.

Pratap Singh Mehra
quelle
-1

Mit Preview auf einem Mac ist das eigentlich ganz einfach. Sie müssen lediglich die Datei in der Vorschau öffnen und ein PNG oder JPEG speichern (oder exportieren). Stellen Sie jedoch sicher, dass Sie am unteren Rand des Fensters mindestens 300 dpi verwenden, um ein qualitativ hochwertiges Bild zu erhalten.

Jeff White
quelle
6
Kann dies automatisiert werden, wenn Sie Tausende von Seiten haben?
JBWhitmore