Eine UNIX-Philosophie von Ken Thompson aus dem Jahr 1978 besagt: "Make each program do one thing well." Diese und weitere Kernaussagen wurden von Doug McIlroy im Bell System Technical Journal dokumentiert, das von 1922 bis 1983 erschienen ist. Dahinter steckt die Idee, dass man ein Programm für einen Zweck verwenden soll; dieses soll darauf spezialisiert sein und es richtig machen.
Ken Thompson und Dennis Ritchie, 1973
Es gibt viele Werkzeuge, mit denen bestimmte Dateiformate in PDFs konvertiert werden können. Wenn es jedoch um die Umwandlung von Open Document Text (odt) in PDF geht, sieht es mau aus. Selbstverständlich gibt es drölfzig dubiose Online-Konverter und Pandoc kann es auch, aber nur widerwillig.
Zum Glück ist es gar nicht notwendig Pandoc zu installieren oder sonst irgendetwas, denn ihr habt bereits ein ausgezeichnetes Kommandozeilen-Werkzeug für diesen Zweck auf eurem Rechner. Zugegeben, LibreOffice ist nicht unbedingt für seine CLI-Fähigkeiten bekannt; dennoch sind diese reichhaltig.
Und so geht es: Öffnet ein Terminal und navigiert in ein Verzeichnis mit den ODT-Dateien, die konvertiert werden sollen. Dann gebt ihr diesen Befehl ein, um alle ODTs im Verzeichnis in PDF-Dateien umzuwandeln:
libreoffice --headless --convert-to pdf *.odt
Das war es auch schon. Nach Beendigung des Befehls findet ihr gleichnamige PDF-Dokumente im Verzeichnis. Es muss nicht immer ein Extra-Werkzeug sein, wenn eine bereits installierte Anwendung den Job übernehmen kann. Das würde auch Ken Thompson gefallen.
Bildquelle: https://commons.wikimedia.org/wiki/File:Ken_Thompson_and_Dennis_Ritchie--1973.jpg
Hi,
gleiches gilt für die in LO enthaltene Funktion zum Exporteiern von Dokumenten via "Datei → Exportieren als → Als PDF exportieren bzw. → Direkt als PDF exportieren".
VG
> Habe diesen Tip in einem Test-Ordner angewendet.
> Es funktioniert tadellos.
> THX!
"Pandoc kann es nur widerwillig"? 🤨️
Pandoc ist gar nicht mal übel, und es kann mit einer "ODT Vorlage" problemlos in Kombination mit "libreoffice --headless" verwendet werden, das tue ich schon lange:
Anhand meiner "ODT-Vorlage"/ "LO Referenz Dokument" (--reference-doc=./css/template05.odt) wandele ich in einem Skript -mittels pandoc- einige meiner *.markdown Dateien in ODT, und dann noch mit libreoffice --headless das erzeugte ODT –ja, ja, ich weiß schon– in "MS Word", ...und zwar so:
(...) DATE=$(date +"%Y-%b%d%s") (...) libreoffice --headless --convert-to docx --outdir ./archiv ./archiv/"output${DATE}".odt
PS: Der im Beitrag vorgestellte Trick mit PDF über "libreoffice --headless --convert-to pdf .odt" ginge natürlich ebenfalls, bzw. ggf. zusätzlich. Wir hätten somit dann aus .markdown erzeugtes ODT und dann anschliessend als PDF und DOCX.
PPS: Rückwärts geht es übrigens DEUTLICH(!) schwieriger :D
Siehste, genau das meine ich mit "widerwillig" :)
Hallo, @trmsc@bildung.social hat auf Github https://github.com/TRMSC/linux-snippets/tree/main/kde-servicemenus eine kleine Anleitung erstellt, wie man das in einem KDE-servicemenu unterbringt, funktioniert angepasst auch mit anderen Dateimanagern.