Hin und wieder mache ich mir LaTeX, das auf dem Textsatzsystem TeX basierende Softwarepaket, zunutze. Meistens für Bewerbungen, Kündigungen und seltener für Publikationen sowie andere Arbeiten. Jedoch sind die PDF-Dateien, welche LaTeX generiert, meist sehr groß. Und damit meine ich eine 5-seitige Bewerbung mit fast nur Text, maximal 2 unterschiedlichen Schriftarten und 3 unterschiedlichen Farben mit einer Größe von etwa 425 Kilobyte.
Auf der Suche nach Optimierungsmöglichkeiten fand ich diese Diskussion. Dort wurde ein Skript gepostet, welches mithilfe von GhostScript eingegebene PDF-Dateien optimiert und dazu auch anzeigt, wie viel Platz eingespart werden konnte.
Leider ist dieses Skript nicht dafür ausgelegt, PDF-Dateien mit Leerzeichen und Sonderzeichen im Dateinamen zu verarbeiten. Daher habe ich kleinere Anpassungen vorgenommen und mir erlaubt, das angepasste Skript auf GitHub zur Verfügung zu stellen.
Aufgerufen wird das Skript dann wie folgt:
./optpdf.sh datei.pdf
Ein Beispiel für alle auf „.pdf“ endenden Dateien des aktuellen und aller Unterverzeichnisse:
find /verzeichnis -name "*.pdf" -exec ./optpdf.sh {} \;
ACHTUNG! Die PDF-Dateien werden dabei überschrieben. Es empfiehlt sich also, vorher eine Sicherung zu erstellen.
Es existieren weitere Tools um PDF-Dateien weiter zu optimieren, beispielsweise pdfopt, welches PDF-Dateien linearisiert und durch interne Verweise Zugriffszeiten auf Seiten von PDF-Dokumenten verbessert.