Wenn ich eine MiKTeX: ca. 6,4 MiB, TeX Live: ca. 4,3 MiB Die Programme und Pakete sind jeweils aktuell. Woran liegt dieser große Unterschied und gibt es eine Möglichkeit, die beiden PDFs zu vergleichen bzw. mögliche Differenzen zu finden? gefragt 28 Sep '15, 15:41 tom75
Ergebnis 5 von 17
show 12 more comments
|
Ein Vergleich der eingebetteten Schriftarten mit dem Kommand Durch die Anregung von @saputello habe ich folgende Open in Online-Editor
\documentclass{standalone} \begin{document} \begin{tabular}{@{}l@{\,=\,}l@{}} \verb|\pdfcompresslevel| & \the\pdfcompresslevel \\ \verb|\pdfobjcompresslevel| & \the\pdfobjcompresslevel \\ \verb|\pdfminorversion| & \the\pdfminorversion \\ PDF-Version & 1.\the\pdfminorversion \\ \verb|\pdfpkresolution| & \the\pdfpkresolution \\ \end{tabular} \end{document} Das Ergebnis für Windows 7 / MiKTeX: Das Ergebnis für Kubuntu 14.04 / TeX Live: Der Unterschied liegt hier also bei Im feature request von MiKTeX wurde bereits gewünscht, dass man die Einstellung für Übersetzt man die Datei mit MiKTeX mit der Option beantwortet 29 Sep '15, 19:28 tom75 Es bleibt die Frage: Wenn Du
(30 Sep '15, 17:26)
saputello
Gut Ding will Weile haben :-)
(30 Sep '15, 18:34)
tom75
|
Sind Bilder eingebunden, oder wie kommt die verhältnismäßig große Dateigröße zustande. Reiner Text wird es bei mehreren MiB ja nicht sein!?
Es ist eine beamer-Präsentation mit 239 Seiten, 1005 Slides, ganz vielen TikZ-Bildern, auch mit gnuplot. Wenn man die PDFs stichprobenartig vergleicht, scheinen sie opisch identisch zu sein. Aber es ist mühsam, alles zu vergleichen.
Unterschiedliche Voreinstellungen für die PDF-Version und die Komprimierung für PDF-Objekte? Unterschiedliche Grafiklibraries?
Zum Thema Vergleich: Man kann PDFs in Bitmap-Grafiken umwandeln und dann beispielsweise mit ImageMagick XOR verknüpfen, um Unterschiede optisch zu ermitteln. Es gibt neuerdings auch ein Paket, das zwei PDF übereinander legt. Leider kann ich es gerade nicht finden und weiß den Namen nicht mehr.
@saputello Wo sehe ich die Voreinstellungen für die PDF-Version bzw. Komprimierung und Grafiklibraries?
Vergleiche mal die eingebunden Schriften mit
pdffonts <datei>
oder über den Adobe Reader.@tom75: Schau mal im pdftex-Manual nach. Da findest Du spezielle Primitive dafür, die man nicht nur setzen, sondern auch abfragen kann. Die PDF-Version ist außerdem normalerweise im Eigenschaftendialog des PDF-Viewers zu finden. Welche Grafiklibs verwendet werden, findet man nur im Quellcode. Mich würde jedenfalls nicht wundern, wenn unterschiedliche Implementierunge unterschiedliche Grafiklibs verwenden würden und das zu unterschiedlichen Ergebnissen bei der Dateigröße führen würde …
… Ohne im Idealfall den Quelltext des PDFs und den Quellcode der PDFTeX-Implementierungen zu kennen, ist das aber alles Spekulation.
@Herbert: Ok, ich schau nachdem danach und ergänze die Frage. @saputello: Schreib ich dann beispielsweise thepdfcompresslevel ? Kommt die Ausgabe dann ins Logfile?
@tom75: Wenn Du
thepdfcompresslevel
in das Dokument schreibst, wird genau das ausgegeben. Wenn Du den Wert von\pdfcompresslevel
haben willst, musst Du natürlich\the\pdfcompresslevel
in das Dokument schreiben:Gleiche Font-ID heißt übrigens noch nicht, dass es derselbe Font ist. Dazu müsste man die Font-Dateien selbst vergleichen. Außerdem heißt es nicht, dass beide TeX-Implementierungen dieselben Teile des Fonts in die Datei einbinden. Erster Punkt wäre also tatsächlich zu klären, ob es an den Fonts oder deren Einbindung liegt, an (externen) Abbildungen, an Objekt-Komprimierung etc. Dazu muss man diverse Einzeltests anstellen. Erst dann kann man vermuten, woran es bei einem komplexen Dokument liegt.
@saputello: Ich weiss nicht, wo die in meinem letzten Kommentar geblieben sind :-)
Ich hab jetzt den (einen) Unterschied:
\pdfobjcompresslevel
ist in TeX Live auf 2 gesetzt, in MiKTeX auf 0.@tom75: Das ist ein ganz erheblicher Unterschied. Komprimierte Objekte sparen in der Tat reichlich Platz. Was die einzelnen Level bedeuten steht in der Anleitung.
@saputello: Weisst du, ob das Nebeneffekte/Qualitätsverlust etc. hat? Man könnte den Wert ja auch noch auf 3 setzen, um zusätzlich zu sparen.
@Tom75: Qualitätsverluste gibt es keine und wenn man ohnehin PDF 1.5 erzeugt, dann sehe ich auch wenig Sinn darin, einen Wert < 2 zu verwenden. 3 nicht zu verwenden kann jedoch sinnvoll sein. Ich schaue beispielsweise gerne mal mit
strings
oderhexdump
oder schlicht im demhex-mode
odertext-mode
vonemacs
in eine PDF-Datei, um die Info-Einträge zu lesen. Angeblich werten auch manche Robots im Internet diese Einträge aus. Allerdings könnte die auch eine Lib nutzen, die kein Problem mit der Komprimierung haben. Ob das also noch eine Rolle spielt, weiß ich nicht.Du kannst ja mal auf der MiKTeX-Liste fragen, warum MiKTeX in der Voreinstellung zwar PDF 1.5 erzeugt aber
\pdfobjcompresslevel
auf 0 belässt. Irgend etwas wird man sich ja gedacht haben.Die eigentliche Frage für mich ist, was wir mit der Frage hier machen. Eigentlich müsste man sie als zu diskutierend schließen. Auf der anderen Seite ist die Frage an sich nicht verkehrt. Vielleicht willst Du sie ja selbst insofern beantworten als die unterschiedliche Voreinstellung von
\pdfobjcompresslevel
der entscheidende Unterschied ist. Vielleicht kannst Du dabei auch noch ermitteln, was bei MiKTeX passiert, wenn man ein\pdfobjcompresslevel=3
in die Dokumentpräambel einfügt. Dann können wir ggf. auch Kommentare wieder entfernen.@saputello: Ein erster Entwurf einer Antwort.