Hallo zusammen,
gibt es eine Möglichkeit, Die Dateigröße von PDFs, die z.B. mit Schribus erstellt wurden, in Ubuntu zu verkleinern. Ziel ist es hier möglichst viele Informationen in eine kleine PDF zu bekommen.
Danke für Infos, Gruß – Blumenschein
Anmeldungsdatum: Beiträge: 100 |
Hallo zusammen, gibt es eine Möglichkeit, Die Dateigröße von PDFs, die z.B. mit Schribus erstellt wurden, in Ubuntu zu verkleinern. Ziel ist es hier möglichst viele Informationen in eine kleine PDF zu bekommen. Danke für Infos, Gruß – Blumenschein |
||||
Anmeldungsdatum: Beiträge: 23336 |
Normalerweise kann man das in der Anwendung -Scribus- einstellen, mit "Ubuntu" hat das nichts zu tun. Es wird einfach die Qualität und Auflösung von Bimtmapdateien reduziert - keine Hexerei. Schrift und Vektoren sind natürlich nicht betroffen. http://wiki.ubuntuusers.de/ImageMagick Damit ist auch eine Stapelverarbeitung möglich. |
||||
Anmeldungsdatum: Beiträge: 1836 |
Ich habe mir dazu folgendes Shell-Skript geschrieben (shrinkpdf):
Man ruft es wie folgt auf, um z.B die Auflösung von Bilder auf 150 dpi zu reduzieren: shrinkpdf 150 tollesdokument.pdf Es wird eine Datei names tollesdokument_150x150.pdf angelegt. Wieviel die Reduktion bringt, hängt vom Dokument ab. |
||||
Anmeldungsdatum: Beiträge: 23336 |
Imgagemagick nutzt gs, quasi Frontend. gs direkt ist natürlich effizienter! Kannst du da noch die Qualität einbauen? Dann wäre es perfekt. Besser ist neu aus Originalprogramm, keine Ahnung wieso. |
||||
![]() Anmeldungsdatum: Beiträge: 7777 |
Es kommt stark auf die PDF Datei an und wie es danach aussehen soll. Farbtiefe verringern kann z.B. mehr bringen als Auflösung runterzudrehen, aber es kommt aufs Material an. Speziell zu Scribus vielleicht das hier: http://wiki.scribus.net/canvas/Scribus_Output#PDF_size dort (inkl. weitere Links) |
||||
Anmeldungsdatum: Beiträge: 170 |
Bei der Ausführung des Skripts erhalte ich folgende Fehlermeldung: Invalid value for option -dColorImageResolution=xxx.pdf, use -sNAME= to define string constants Habe ich etwas übersehen? Gruß, M. |
||||
![]() Anmeldungsdatum: Beiträge: 7777 |
klingt so als hättest du es mit falschen parametern aufgerufen |
||||
Anmeldungsdatum: Beiträge: 1836 |
Reihenfolge der Parameter ist: Auflösung und danach Dateiname. Du hast vermutlich keine Auflösumg angegeben. Das Skript macht keine Fehlerbehandlung, da es nur ein schneller Hack für mich ist. Wie ich bereits geschrieben habe - für Auflösung 150 dpi: shrinkpdf 150 tollesdokument.pdf Wenn Du 75 dpi willst:
Ich schreibe in dem Skript die Auflösung in den Dateinamen, da ich immer mehrere Auflösungen probiere und den akzeptablen Kompromis zwischen Qualität und Speicherbedarf zu ermitteln. |
||||
Supporter
![]() Anmeldungsdatum: Beiträge: 2587 Wohnort: Düren/Rhld |
Das Thema scheint ja einige Leute zu beschäftigen. Aber warum das Rad neu erfinden? Es gibt bereits eine Lösung von Jean-Philippe Fleury, die ich soeben erfolgreich auf eine ganze Reihe von PDFs losgelassen habe. Die kann man hier herunterladen. Derzeit steckt in diesem Skript nur die französische und englische Sprache drin und auf meinem deutsch konfigurierten System hat sich das Ding in französisch gemeldet *seufz*. Die deutsche Übersetzung habe ich dann gleich mal darin ergänzt und die modifizierte Datei an ihn geschickt. Das ist aber gerade erst passiert. Falls hier jemand die auch deutschsprachige Version haben möchte, ich habe sie schon. ☺ Aber ich bin mir unsicher, ob ich die ohne Fleurys Kenntnis hier einfach hochladen oder sonstwie weitergeben darf. |
||||
![]() Anmeldungsdatum: Beiträge: 7777 |
PDF ist im Prinzip nur ein Containerformat, da kann alles mögliche drin sein und es gibt ganz verschiedene Lösungsansätze.
Das mag ja ganz nett sein für Leute die eine 1-Klick-Lösung suchen, aber das Script ist doch viel heiße Luft und nichts dahinter. Das macht auch nichts anderes als gs aufzurufen.
Es ist GPLv3. Solange du das Copyright intakt und die Lizenz beibehältst, ... |
||||
Anmeldungsdatum: Beiträge: 1836 |
Ich habe auch zuerst im Netz gesucht und nicht richtig simples gefunden. Mein Skript ist bewußt so minimalistisch wie möglich gehalten. Es ist nichts besonders. Aber man kann es aber z.B. in find per -exec ausführen und dann in einem Rutsch eine Vielzahl von Dateien schrumpfen. |
||||
Anmeldungsdatum: Beiträge: 170 |
Kannst Du uns dazu Näheres sagen? Am besten ein nachvollziehbares Beispiel. Gruß, M. |
||||
Anmeldungsdatum: Beiträge: 170 |
Die Lösung funktioniert gut und ist für den gelegentlichen Einsatz auch empfehlenswert, zumal sie Tippfehler bei der Eingabe verhindert. Besser wäre nur noch eine Lösung, die man aus dem Filemanager (in meinem Fall nemo) aufrufen kann, also Datei auswählen → per Kontextmenü die Konvertierung - am besten in verschiedenen Kompressionsstufen - starten. Sowas gab es früher mal, wenn ich mich recht erinnere, als Nautilus-Script. Es wäre schön, wenn einer auch dieses Rad neu erfinden könnte. Gruß, M. |
||||
Anmeldungsdatum: Beiträge: 1836 |
Das ist eine lange Geschichte - siehe man page von find. Um zum Beispiel alle pdf-Dateien des aktuellen Verzeichnisses und der enthaltenen Unterverzeichnisse auf 150 DPI zu reduzieren (shrinkpdf muß dazu in $PATH sein), genügt:
Möchte man bei jeder Datei gefragt werden:
Natürlich kann man per Pattern Matching sekektiv Dateien auswählen, Rekursionstiefe festlegen,.... So einfach geht das. So aufgeblasene GUI-Lösungen sind nur unflexibel. |
||||
![]() Anmeldungsdatum: Beiträge: 7777 |
Oder per for-Schleife: for f in *.pdf; do shrinkpdf 150 "$f"; done Unterverzeichnisse gehen dann mit */*.pdf */*/*.pdf Man könnte das shrinkpdf jetzt noch etwas aufbohren, so daß auch shrinkpdf *.pdf direkt gehen würde und die Auflösung optional wird mit shrinkpdf -res 150 *.pdf ... dann könnte man sich auch die for-Schleife sparen und das Script wahrscheinlich auch als Filter für nautilus und andere einsetzen.
Ich habe nichts gegen GUI-Lösungen, manchmal schreibe ich sowas in dem Stil sogar selbst ( bei meinem Onkel stürzt Brasero aus unerfindlichen Gründen beim CD-Image ziehen ab, daher habe ich ihm ein 1-Klick-Script gebastelt http://paste.ubuntuusers.de/416907/ ). Es gibt ja auch GUIs die wirklich was draufhaben, also z.B. gparted macht Sachen die man mit dem Kommandozeilen-parted nicht hinbekommt bzw. wo man dann eben selber wissen muß wie das geht. Das ist dann ein Rad das man nicht mal eben neu erfindet; ein Script das letztendlich nur einen einfachen Befehl aufruft ist nett, aber kein Rad im Sinne von einer bahnbrechenden Erfindung... Leider kenne ich keine gute GUI für "PDF Dateigröße verringern", das wäre ein Programm mit diversen Optionen und vielleicht einem Seite-an-Seite vorher-nachher Vergleich. Sowas könnte dann eine geniale Lösung sein (eben "das Rad"). Zum Ränder zuschneiden gibts sowas in der Art mit "briss", das legt alle PDF-Seiten optisch übereinander in ein Bild, so daß man direkt für alle Seiten sehen kann, was weggeschnitten wird - wirklich kleiner wird die Datei dadurch aber nicht unbedingt, da geht es mehr darum, unnötige Ränder oder auch Footer/Header/Seitenzahlen rein optisch loszuwerden. |