Ich habe eine 72,9 MB PDF-Datei, die ich auf unter 500 KB verkleinern muss.
Die Datei war ein JPEG-Bild, das ich gescannt und dann in ein PDF konvertiert hatte.
pdf
compression
Tamimym
quelle
quelle
pdfopt
eine einfache Syntax und verbessert das Laden und die Geschwindigkeit beim Blättern im iPad-Zeitalter. :-)Antworten:
aking1012 ist richtig. Mit mehr Informationen zu möglichen eingebetteten Bildern, Hyperlinks usw. wäre es viel einfacher, diese Frage zu beantworten!
Hier finden Sie einige Skript- und Befehlszeilenlösungen. Verwenden Sie, wie Sie es für richtig halten.
quelle
Verwenden Sie den folgenden Ghostscript- Befehl:
-dPDFSETTINGS=/screen
geringere Qualität, kleinere Größe. ( 72 dpi )-dPDFSETTINGS=/ebook
für bessere qualität, aber etwas größere pdfs. ( 150 dpi )-dPDFSETTINGS=/prepress
Ausgabe ähnlich der Einstellung "Prepress Optimized" von Acrobat Distiller ( 300 dpi )-dPDFSETTINGS=/printer
Wählt eine Ausgabe ähnlich der Einstellung "Druckoptimiert" von Acrobat Distiller ( 300 dpi ).-dPDFSETTINGS=/default
Wählt die Ausgabe aus, die für eine Vielzahl von Verwendungszwecken nützlich sein soll, möglicherweise auf Kosten einer größeren Ausgabedateiquelle
screen
Einstellung für mich eine zu niedrige Qualität hatte, aberebook
gut funktionierte, indem ich ein scanbasiertes PDF mit 33 MB auf 3,6 MB reduzierte und es sehr gut lesbar hielt. Andere Optionen für diese-dPDFSETTINGS
Option sind hier aufgeführt: milan.kupcevic.net/ghostscript-ps-pdf . Es ist möglicherweise eine gute Idee, sie in diese Antwort aufzunehmen.Meine Lieblingsmethode ist es, das PDF in PS und zurück zu konvertieren. Es funktioniert zwar nicht immer, aber wenn es funktioniert, sind die Ergebnisse schön:
Dies funktioniert auch direkt bei PDFs, wie in den Kommentaren vorgeschlagen.
Einige Benutzer melden auch mehr Erfolg, wenn sie die E-Book-Einstellungen wie folgt verwenden:
quelle
ps2pdf intput.pdf output.pdf
Wenn Sie ein PDF mit gescannten Bildern haben , können Sie
convert
ein PDF mit JPEG-Komprimierung erstellen (Sie können diese Methode für jedes PDF verwenden, verlieren jedoch alle Textinformationen).Zum Beispiel:
Passen Sie Dichte (zB 100x100) und Qualität an Ihre Bedürfnisse an.
Abhängig von Ihrer Eingabe ist die JPEG- Komprimierung aufgrund von Komprimierungsartefakten möglicherweise nicht die beste Wahl. Sie haben die Wahl zwischen BZip, Fax, Group4, JPEG, JPEG2000, Lossless, LZW, RLE oder Zip als alternative Komprimierungsmethoden (einige erlauben nur s / w-Bilder). Details finden Sie hier .
Ich konnte (abhängig von den Einstellungen) hervorragende Komprimierungsraten für gescannte / fotografierte Dokumente erzielen. Abhängig von der Dokumentquelle möchten Sie möglicherweise die Farbtiefe (
-depth
Argument) reduzieren .quelle
pdfimages input.pdf pages
pbm Dateien extrahieren, dann können Sie so etwas wie:for page in *.pbm; do convert $page -compress Group4 -type bilevel TIFF:- | convert - output.pdf
. Jegliche OCR geht verloren, also mache ich das normalerweisepdfsandwich output.pdf
, was die Dateigröße noch weiter zu verringern scheint.gs
hinter den Kulissen eingesetzt.--density --quality --compress
vs auszuführen-density -quality -compress
.-resize 50%
auch den Prozentsatz ändern, je nachdem, wie viel DPI beim Scannen verwendet wurdeIch musste ein PDF verkleinern, das Farbscans eines Dokuments enthielt. Jede meiner Seiten war in Bezug auf die Datei ein Vollfarbenbild. Es waren Bilder von Seiten, die Text und Bilder enthielten, aber sie wurden durch Scannen in ein Bild erstellt.
Ich habe eine Kombination aus dem folgenden Ghostscript-Befehl und einem aus einem anderen Thread verwendet.
Dadurch wurde die Bildauflösung auf 150 dpi reduziert und meine Dateigröße halbiert. Beim Betrachten des Dokuments war kaum ein Verlust an Bildqualität festzustellen. Der Text ist auf meinem 2012 Nexus7 immer noch perfekt lesbar.
quelle
Hier ist ein Skript zum Umschreiben von gescannten PDFs:
Sie könnten es ein wenig anpassen, um es wiederverwendbarer zu machen, aber wenn Sie nur ein PDF haben, können Sie es einfach durch
$1
Ihren PDF-Dateinamen ersetzen und in einem Terminal binden.quelle
Normalerweise verwende ich dazu ps2pdf (einfachere Syntax), etwa so:
Ich verwende das folgende Python-Skript, um die Größe aller PDF-Dateien in einem Verzeichnis auf einem Produktionsserver (8.04) zu reduzieren. Also sollte es funktionieren.
quelle
Dies wird ein gutes Ergebnis haben.
quelle
Das Beste für mich war
Andere Möglichkeiten:
Grüße
quelle
pdf2ps input.pdf temp.ps && ps2pdf14 temp.ps output.pdf && rm temp.ps
Ich bin gerade auf dieses Problem gestoßen. Wenn Sie den einfachen Scan verwenden, wählen Sie den Textmodus für Scans mit niedriger Auflösung und Sie müssen sich keine Gedanken über das Kommandozeilenmaterial machen. Ich sage es nur.
quelle
Kontrollieren Sie die Kompressionsqualität:
quelle
shift
. Der erste Parameter ist die Eingabedatei, der zweite ist die Ausgabedatei und der Rest der Parameter wird unverändert übergebengs
.Da dieser Link für mich der erste war, als ich in Google suchte, dachte ich, ich würde noch eine Möglichkeit hinzufügen. Keine der oben genannten Lösungen funktionierte für ein aus Inkscape (15 MB) exportiertes PDF, aber ich konnte es endlich auf 1 MB verkleinern, indem ich es in GIMP öffnete und erneut als PDF exportierte.
Eine andere Option, die nahe kam (aber der Text war ein wenig unscharf), war das Konvertierungsprogramm von ImageMagick:
quelle
convert -compress Zip
schien es, als würden alle Vektoren gerastert.Am Ende schrieb ich meinen eigenen Bash - Skript , dies zu lösen, ist es verwendet
mogrify
,convert
undgs
PDF - Seiten als png zu extrahieren, Größe ändern, wandelt sie in 1-Bit - BMP und sie dann als pdf wieder aufzubauen. Die Dateigrößenreduzierung kann über 90% betragen. Verfügbar unter http://www.timedicer.co.uk/programs/help/pdf-compress.sh.php .quelle
Ich empfehle dringend pdfsizeopt .
Es ist viel effizienter in Bezug auf die Größenreduktion als alle vorherigen CLI und GUI - Software , die ich versucht habe (einschließlich
convert
,gs
,pdftk
, etc.) - wenn auch möglicherweise langsamer mitpngout
aktiviert - und nicht über einen Teil ihrer Ausgaben (nicht schwer verpixelte / verschlechterte Bilder, kein Verlust von Lesezeichen usw.).Wenn Sie nun unabhängig von den Konsequenzen eine bestimmte Größe erreichen müssen (einschließlich einer Verschlechterung der Bildqualität bis hin zu einer Unlesbarkeit), ist dies möglicherweise nicht das benötigte Tool, sondern eine stets funktionierende Lösung, um unnötig große Größen zu reduzieren Ich halte PDFs für die beste Option, ohne an Lesbarkeit, Informationen und akzeptabler Bildqualität zu verlieren. (Hinweis: Ich verwende es in der Regel, nachdem ich in Adobe Acrobat [die Funktion, die früher als "CleanScan" bezeichnet wurde] zum ersten Mal eine Vektorisierungs-OCR durchgeführt habe, die sich auf einige gescannte Textdokumente dramatisch auf die Größe auswirken kann.)
Ich empfehle die generische Unix-Installation :
Installieren Sie alle erforderlichen Abhängigkeiten:
Laden Sie die ausführbare Datei herunter und installieren Sie sie:
Verwendungszweck:
Hinweis für Mac- Benutzer, die diesen Beitrag finden (oder Linuxbrew-Benutzer): Es gibt eine Homebrew-Installationsformel:
quelle
Ich hatte das gleiche Problem und war froh, diesen Thread zu finden. Insbesondere ließ ich ein PDF aus gescannten Bildern erstellen und musste seine Bytegröße um den Faktor 6 reduzieren.
Leider hat keine der oben genannten Lösungen funktioniert :(. Dann stellte ich fest, dass die Seitengröße irgendwo im Scanner-> JPEG-> PDF-Prozess um den Faktor 4 aufgebläht war. Die gescannten Dokumente hatten alle die Größe Letter. aber das pdf hatte größe von
Die gewünschten Ergebnisse habe ich schließlich mit einem "convert" -Befehl erzielt, der sowohl die Größenänderung als auch die Komprimierung in einem Schritt ausführte:
Beachten Sie, dass doc_orig eine Dichte von 72 x 72 dpi hatte.
quelle
Wenn die Konvertierung in djvu auch in Ordnung wäre und keine Farben betroffen sind, könnten Sie Folgendes versuchen:
Konvertieren Sie das PDF in JPG-Dateien mit
pdfimages -j
Wenn Sie stattdessen pbm-Dateien erhalten, sollten Sie den Zwischenschritt ausführen:
for FILENAME in $(ls *.pbm); do convert $FILENAME ${FILENAME%.*}.jpg ;done
Der Befehl convert stammt aus dem imagemagick-Paket.
Verwenden Sie dann scantailor , um daraus Tifs zu machen.
In einem letzten Schritt gehen Sie zu scantailors out direcory (wo sich die tifs befinden) und wenden djvubind auf dieses Verzeichnis an.
Dadurch sollte die Dateigröße drastisch reduziert werden, ohne dass der Text an Qualität verliert. Wenn Sie eine genauere Kontrolle über das OCR-Backend wünschen, können Sie versuchen
djvubind --no-ocr
, die OCR-Ebene anschließend mit ocrodjvu hinzuzufügen.Wenn Sie in Ihrem Dokument Farben haben, werden die Dinge etwas komplizierter. Anstelle von djvubind können Sie auch didjvu verwenden und in scantailor müssen Sie in den gemischten Modus wechseln und manchmal Farbbilder manuell auswählen.
quelle
Bild oder sogar PDF-Datei in Inkscape laden.
Aus inkscape: Speichern Sie im Vektorformat (als native .svg).
Importieren Sie Vektordateien in Scribus, bearbeiten Sie das Layout und exportieren / speichern Sie sie als PDF
quelle
Super einfaches PDF-Komprimierungs-Tool: GitHub-Seite.
Installation unter Ubuntu:
Es verwendet Ghostscript.
quelle
Sie können dies versuchen:
Es ist schneller als
gs
, komprimiert jedoch in diesem Fall bis zu 30% für eine 107,5-MB-Eingabedatei.quelle
Für mich war die gs-
screen
Option zu schlecht und dieebook
zu groß.Mein Originaldokument enthielt Text in Farbe und in Schwarzweiß (je nach Seite).
Die beste Lösung, die ich gefunden habe, war:
Beachten Sie, dass die Komprimierungsstufe nicht linear ist. Wenn ich 135 angegeben habe, wurde sie nicht komprimiert. In meinem Fall war 130 die maximale Auflösung, mit der eine Komprimierung erzielt wird.
quelle
Ich habe die folgenden Befehle verwendet, aber meine PDF-Datei wurde nicht wesentlich komprimiert. Manchmal war ein Teil des Teils nach der Kompression geschwärzt.
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf $INPUTFILE
"ps2pdf -dPDFSETTINGS=/ebook %s %s" % (input_file_path, out_file_path)
Nachdem ich zu viel im Web gewandert war, konnte ich einfach nicht die richtige Komprimierungsbibliothek finden. Ich bin rübergekommen
pdfcompressor.com
. Dies ist einfach eine großartige Website. Es komprimiert das PDF um 95% (15 MB Dateien). Also habe ich Selen und Tor verwendet, um die Komprimierung zu automatisieren. Checke mein Github-Repository aus. [GITHUB] ( https://github.com/gugli28/PdfCompressor )quelle