Wie reduziere ich die Größe einer PDF-Datei, die Bilder enthält?

16

Ich habe eine PDF-Datei, die Bilder enthält, und ich möchte ihre Größe reduzieren, um sie auf eine Site mit einer Größenbeschränkung hochzuladen.

Wie kann ich die Größe einer PDF-Datei über die Befehlszeile reduzieren?

Pandya
quelle

Antworten:

23

Sie können gs- GhostScript (PostScript- und PDF-Sprachinterpreter und -Vorschau) wie folgt verwenden:

  • Stellen Sie pdfwrite als Ausgabegerät von ein-sDEVICE=pdfwrite
  • Verwenden Sie die entsprechende -dPDFSETTINGS.

    Aus der Dokumentation :

    -dPDFSETTINGS = Konfiguration
    Setzt die "Destillierparameter" auf eine von vier vordefinierten Einstellungen vor:

    • / screen wählt eine Ausgabe mit niedriger Auflösung aus, die der Einstellung "Screen Optimized" von Acrobat Distiller ähnelt.
    • / ebook wählt eine Ausgabe mit mittlerer Auflösung ähnlich der Acrobat Distiller-Einstellung "eBook".
    • / Drucker wählt eine Ausgabe ähnlich der Einstellung "Druckoptimiert" von Acrobat Distiller aus.
    • / prepress wählt eine Ausgabe ähnlich der Einstellung "Prepress Optimized" von Acrobat Distiller.
    • / default wählt eine Ausgabe aus, die für eine Vielzahl von Verwendungszwecken nützlich sein soll, möglicherweise auf Kosten einer größeren Ausgabedatei.
  • -oOption zur Ausgabe einer Datei, die auch -dNOPAUSEund festlegt-dBATCH (siehe Interaktionsbezogene Parameter )

Beispiel:

$ du -h file.pdf 
27M file.pdf

$ gs -sDEVICE=pdfwrite -dPDFSETTINGS=/ebook -q -o output.pdf file.pdf

$ du -h output.pdf 
900K    output.pdf

Hier -qUnterdrückungs normalen Startmeldungen, und auch nicht das Äquivalent von -dQUIETdenen Kommentare Routineinformationen unterdrückt

Pandya
quelle
Funktioniert bei mir nicht Eine durchsuchbare PDF-Ausgabe von tesseractbleibt unverändert, wenn Sie versuchen, sie mit diesem Befehl zu verkleinern.
Gabriel Staples
2
ps2pdf input.pdf output.pdf

Ich habe die Antwort von ask ubuntu bekommen und es hat bei mir funktioniert. Es reduzierte tatsächlich 18,1 MB auf 1,0 MB

Freeman
quelle
Funktioniert bei mir nicht Eine durchsuchbare PDF-Ausgabe von tesseractbleibt unverändert, wenn Sie versuchen, sie mit diesem Befehl zu verkleinern.
Gabriel Staples
0

Sie können dies versuchen:

$ time pdftk myFile.pdf output myFile__SMALLER.pdf compress
GC Warning: Repeated allocation of very large block (appr. size 16764928):
    May lead to memory leak and poor performance.
GC Warning: Repeated allocation of very large block (appr. size 8384512):
    May lead to memory leak and poor performance.
GC Warning: Repeated allocation of very large block (appr. size 11837440):
    May lead to memory leak and poor performance.
GC Warning: Repeated allocation of very large block (appr. size 8384512):
    May lead to memory leak and poor performance.
GC Warning: Repeated allocation of very large block (appr. size 33525760):
    May lead to memory leak and poor performance.
GC Warning: Repeated allocation of very large block (appr. size 7254016):
    May lead to memory leak and poor performance.
GC Warning: Repeated allocation of very large block (appr. size 34041856):
    May lead to memory leak and poor performance.
GC Warning: Repeated allocation of very large block (appr. size 33525760):
    May lead to memory leak and poor performance.

real    0m23.677s
user    0m23.142s
sys     0m0.540s
$ du myFile*.pdf
108M    myFile.pdf
74M     myFile__SMALLER.pdf

Es ist schneller als gs, komprimiert in diesem Fall jedoch bis zu 30% für eine 107,5-MB-Eingabedatei.

SebMa
quelle
Funktioniert bei mir nicht Eine durchsuchbare PDF-Ausgabe von tesseractbleibt unverändert, wenn Sie versuchen, sie mit diesem Befehl zu verkleinern.
Gabriel Staples