img2pdf oder img2pdf-gui
Aus Bildern PDF machen, hm, so auf die Schnelle weiss ich da nix, aber PDF zusammenführen scheint mit den Poppler-utils auch zu gehen.
Grüssle, Sly
..dem Inschenör ist nix zu schwör..
img2pdf oder img2pdf-gui
das leben ist hart, aber wir müssen da durch.
ist die zeile nach dem ersetzen des "inputs" durch den namen der echten pdf datei so komplett? Im verzeichnis der zu bearbeitenden datei in der konsole ausgeführt, passiert bei mir nichts, ausser, dass die liste mit den ganzen optionen ausgegeben wird. Aber die kommandozeile war noch nie meine stärke
gruß inka
pdftoppm testinput.pdf seiten -png
testinput.pdf ist die Eingabe
seiten ist die Ausgabe mit der Endung der Grafikformat und Seitenzahl
seiten-[1..9].png
Gruß
Stephan
das leben ist hart, aber wir müssen da durch.
Funktionierendes Beispiel:
Die PDF wird hier zu Einzelseiten (als png) zerlegt, unabhängig von ihrer Seitenzahl.Code:pdftoppm /home/ichselber/Python-Programme/download/news.pdf /home/ichselber/Python-Programme/download/news -png
Die landen im selben Verzeichnis (sollte sich aber problemlos auf ein anderes Verzeichnis umbiegen lassen).
Es gibt weitere Optionen, z.b. kann man die Auflösung der Seiten angeben, oder auch nur einzelne Seiten extrahieren.
Wenn man nicht genau weiss, ob die Seitenanzahl immer die selbe ist, sollte man aber vorher aufräumen.
Grüssle, Sly
..dem Inschenör ist nix zu schwör..
Soweit läufts:
Momentan passiert da schon recht viel: zuerst wird die PDF herunter geladen, danach wird sie in Einzelseiten zerlegt. Damit die Slideshow nicht zu lang wird, werden nur die Seiten 1-5 als *.png gespeichert (normalerweise hat die PDF so um die 15 Seiten).
Dann wird die PDF wieder gelöscht- die wird nicht mehr gebraucht.
Vor dem Erzeugen der Einzelbilder wird die aktuelle Bildschirmgrösse ermittelt, und die erzeugten Bilder auf ungefähr 2/3 der Bildschirmbreite skaliert.
Das Ganze passiert nach jedem Start (man könnte da noch ne Datums-Abfrage einbauen, aber da das Ding gewöhnlich kurz vor dem Öffnen des Museums ein- und kurz nach dem Schliessen ausgeschalten wird, ist das nicht wirklich nötig).
Auf die Weise kann ich den Kram später einfach in den Autostart packen.
Aus denen wird nun, mittels Tkinter-Canvas-Widget, die Slideshow erzeugt.
Da ich momentan keine andere Möglichkeit sehe, einen Timer zu schreiben, wirft sie beim Beenden ne Fehlermeldung (blöde Idee, eine Funktion sich selbst aufrufen zu lassen, ich weiss), das wird später gelöst, wenn Datum und Uhrzeit ins Spiel kommen.
2/3 des Bildschirms benutze ich nur deswegen, weil da noch weiteres kommen soll: oben ein Info-Text (der später irgendwann von nem MQTT-Server kommen soll, erst mal wird er schlichtweg nach der Uhrzeit erzeugt (sowas wie "nächste Führung um...XX:YY"), rechts an die Seite sollen Thumbnails, die eine Videoauswahl bieten....vielleicht bau ich da auch noch ne kleine Wetteranzeige ein oder sowas.
Die MQTT-Geschichte wird notwendig, weil wir zwar feste Zeiten für die Führungen haben, das aber oft nicht hin haut- daher bau ich dann später ein kleines Gerätchen, wo man diese Uhrzeit leicht verändern kann (kleines Display, ein Drehgeber und ein ESP8266, mehr brauchts ja gar nicht).
Dazu muss aber noch geklärt werden, wer den ganzen Krempel eigentlich bezahlt, hehe. Es gibt nämlich zusätzlich ne (defekte....) Aussenanzeige für die Führungszeiten. Die würde dann nen weiteren kleinen Rechner und ein Display erfordern, kann aber ebenfalls leicht in den MQTT-Kram eingebunden werden.
Daher wird das auf "später" vertagt...
Grüssle, Sly
..dem Inschenör ist nix zu schwör..
Lesezeichen