Wie man einen gesamten Ordner von PDFs mit ghostscript (gs) auf der Kommandozeile komprimiert
Dieses Bash-Skript komprimiert alle PDFs (*.pdf) im aktuellen Verzeichnis. Für eine Eingabedatei namens a.pdf wird die Ausgabedatei nach a.compressed.pdf geschrieben. Die Eingabedatei wird nicht geändert.
compress_pdfs.sh
export IMAGE_DPI=72
for i in *.pdf ; do gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -dSAFER -dDownsampleColorImages=true -dColorImageDownsampleType=/Bicubic -dColorImageResolution=$IMAGE_DPI -dGrayImageResolution=$IMAGE_DPI -dMonoImageDownsampleType=/Subsample -dMonoImageResolution=$IMAGE_DPI -dEmbedAllFonts=true -dSubsetFonts=true -sOutputFile="$i.compressed.pdf" "$i" ; doneDieser Befehl reduziert die PDF-Größe hauptsächlich durch Heruntertakten der Bildauflösung. Er ist auf eine Auflösung von 72 dpi voreingestellt (export IMAGE_DPI=72).
72 dpi ist eine ziemlich niedrige Auflösung, aber dies wird die resultierende Größe des komprimierten PDFs signifikant verringern. Wenn Sie gute Bildqualität gegenüber kleiner Dateigröße bevorzugen, sollten Sie einen größeren Wert wählen.
Check out similar posts by category:
Linux
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow