Also convert
von ImageMagick erzeugt gerasterte PDF-Dateien, und viele Leute wären daran interessiert, Vektorgrafiken und Text unverändert zu lassen, sodass nur eingebettete Bilder komprimiert werden. Eine gute Alternative zur Komprimierung ist also die Verwendung von gs
aus Paket ghostscript
Anwendungsbeispiel:
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile=out.pdf in.pdf
im obigen Befehlsparameter:-dPDFSETTINGS=/ebook
ist wichtig. Es kann 3 Werte haben:
-dPDFSETTINGS=/screen (screen-view-only quality, 72 dpi images)
-dPDFSETTINGS=/ebook (low quality, 150 dpi images)
-dPDFSETTINGS=/printer (high quality, 300 dpi images)
-dPDFSETTINGS=/prepress (high quality, color preserving, 300 dpi imgs)
-dPDFSETTINGS=/default (almost identical to /screen)
Ich schlage hier ein Befehlszeilentool vor, das einfach mit Schleifen in integrierten Skriptsprachen in Windows, Linux, OS X usw. gestapelt werden kann.
ImageMagick unterstützt PDFs und hat einen resize
Option mit seinem Konvertierungstool. Ich habe es nie persönlich benutzt, aber Sie können versuchen, damit herumzuspielen.
Sie können auch den compress
verwenden Option (hier ein Beispiel):
PDF drehen
$ convert -rotate 270 -density 300x300 -compress lzw in.pdf out.pdf
Dies setzt ein TIFF-unterstütztes PDF voraus. Der Dichteparameter ist wichtig, weil ImageMagick sonst das Bild heruntersampelt (aus irgendeinem Grund). Das Hinzufügen der Komprimierungsoption trägt dazu bei, die Gesamtgröße der PDF-Datei ohne Qualitätsverlust zu verringern.
Für mehrseitige PDFs können Sie pdftk
verwenden , dann verwenden Sie mogrify
von ImageMagick, um jede Seite an Ort und Stelle zu konvertieren:
$ pdftk in.pdf burst $ mogrify -rotate 270 -density 300x300 -compress lzw pg_*.pdf $ pdftk pg*.pdf cat output out.pdf $ rm pg*.pdf
Um PDF-Dateien mit ImageMagick zu konvertieren, muss GhostScript installiert sein.
ImageMagick kann mehrseitige PDFs konvertieren. Während mogrify
an Ort und Stelle konvertieren wird, empfehle ich Ihnen, convert
zu verwenden damit Sie die Originale im Falle eines Unfalls behalten können.
Ich habe einige Tests an Ihrem bereitgestellten Beispiel-PDF durchgeführt. Das hat bei mir ganz gut funktioniert:
convert -density 200 -compress jpeg -quality 20 test.pdf test2.pdf
Die Dichte ist standardmäßig auf 72
eingestellt DPI. Durch eine höhere Einstellung erhalten wir eine höhere Auflösung und damit eine akzeptable Qualität. Es sah gut aus bei 150
, und war etwas kleiner, aber wenn Sie eine Reihe von PDFs bedienen möchten 200
sollte funktionieren.
Die JPEG-Komprimierung sollte entweder automatisch eine Stufe auswählen oder standardmäßig auf 92
eingestellt sein auf einer Skala von 1
bis 100
mit 100
der Beste sein. Setzen Sie es auf 20
, es sieht fast so gut aus wie das Original (etwas unschärfer und der kleine Text unten ist etwas schwer zu lesen, aber es war trotzdem ursprünglich).
Diese Optionen bringen Ihnen 1,7 MB Sample auf 0,5 MB herunter , während es lesbar bleibt. Sie können ein wenig experimentieren.
Wenn Sie eine kleinere Größe wünschen (sowohl die Datei als auch das Bild/PDF), können Sie -resize #%
verwenden , z.B. -resize 75%
. In Ihrem Beispiel-PDF macht dies das Kleingedruckte am unteren Rand jedoch ziemlich unleserlich.
Wenn Sie immer noch wenig Platz haben, insbesondere bei den mehrseitigen PDFs, können Sie die Dateien weiter komprimieren, indem Sie sie einem ZIP-Archiv (oder einem anderen) hinzufügen. Dadurch wurde die Dateigröße bei diesem Test-PDF auf 0,43 MB reduziert (eine Reduzierung der JPEG-Komprimierungsqualität hat einen viel drastischeren Effekt). Sie können die PDF-Datei auch mit pdftk
in Seiten aufteilen , wie @glallen in seiner Bearbeitung vorgeschlagen hat, oder das Archiv teilen und am anderen Ende neu kombinieren.
2 MB ist auch eine ziemlich kleine Grenze für Anhänge, Sie sollten sich vielleicht nach anderen E-Mail-Anbietern umsehen. Aus dem Speicher stellt GMail über 10 MB pro E-Mail zur Verfügung.
Diese Optionen und mehr sind auf ihrer Website vollständig dokumentiert.