Moin, moin, zusammen,
trollsportverein, habe mich an Deinem Code orientiert & es für eine weitere Konvertierung umgeschrieben.
Dies Mal möchte ich erreichen, dass jede Grafikdatein in ein DIN A4 - PDF umgewandelt und zentriert dargestellt wird, d. h. mit Rand links und rechts.
Das funktioniert mit diesem Code einwandfrei:
Exec=convert %f -resize 1753x1240 -gravity center -extent 1753x1240 -units PixelsPerInch -density 150x150 %f.pdf "`echo "%f" | sed -e s/.jpg/_quer_zentriert.pdf/ -e s/.jpeg/_quer_zentriert.pdf/ -e s/.png/_quer_zentriert.pdf/ -e s/.aspx/_quer_zentriert.pdf/ -e s/.webp/_quer_zentriert.pdf/`"
Nun wollte ich aber auch einbauen, dass eine Fehlermeldung kommt, wenn die Datei bereits existiert.
Auch das funktioniert soweit: Die Fehlermeldung erscheint tatsächlich, falls es schon eine Datei mit demselben Namen gibt.
Wenn es noch keine Datei mit demselben Namen gibt, wird eine neue PDF angelegt:
Exec=[ -f "`echo "%f" | sed -e s/.jpg/_quer_zentriert.pdf/ -e s/.jpeg/_quer_zentriert.pdf/ -e s/.png/_quer_zentriert.pdf/ -e s/.gif/_quer_zentriert.pdf/ -e s/.aspx/_quer_zentriert.pdf/ -e s/.webp/_quer_zentriert.pdf/`" ] && kdialog --icon=ks-error --title="zu PDF konvertieren" --passivepopup="PDF existiert bereits!" ; [ ! -f "`echo "%f" | sed -e s/.jpg/_quer_zentriert.pdf/ -e s/.jpeg/_quer_zentriert.pdf/ -e s/.png/_quer_zentriert.pdf/ -e s/.gif/_quer_zentriert.pdf/ -e s/.aspx/_quer_zentriert.pdf/ -e s/.webp/_quer_zentriert.pdf/`" ] && convert "%f" -resize 1753x1240 -gravity center -extent 1753x1240 -units PixelsPerInch -density 150x150 "%f" "`echo "%f" | sed -e s/.jpg/_quer_zentriert.pdf/ -e s/.jpeg/_quer_zentriert.pdf/ -e s/.png/_quer_zentriert.pdf/ -e s/.gif/_quer_zentriert.pdf/ -e s/.aspx/_quer_zentriert.pdf/ -e s/.webp/_quer_zentriert.pdf/`" && exiftool -overwrite_original -all= "`echo "%f" | sed -e s/.jpg/_quer_zentriert.pdf/ -e s/.jpeg/_quer_zentriert.pdf/ -e s/.png/_quer_zentriert.pdf/ -e s/.gif/_quer_zentriert.pdf/ -e s/.aspx/_quer_zentriert.pdf/ -e s/.webp/_quer_zentriert.pdf/`"
→ Allerdings enthält diese dann immer zwei Seiten:
Seite 1: das zentrierte Bild mit Rändern
Seite 2: das ursprüngliche Bild ohne Ränder
Wieso enthält meine Output - Datei immer statt nur einer gleich zwei Seiten?
Danke im Voraus für Eure Rückmeldungen!
EDIT:
Learning by doing... 😇
Hab es durch Probieren herausgefunden: Im Teil von && convert
war der Dateiaufruf mit "%f"
bei mir fehlerhafter Weise zwei Mal drin.
&& convert "%f" -resize 1753x1240 -gravity center -extent 1753x1240 -units PixelsPerInch -density 150x150 "%f"
Das ist jetzt der richtige Code:
Exec=[ -f "`echo "%f" | sed -e s/.jpg/_quer_zentriert.pdf/ -e s/.jpeg/_quer_zentriert.pdf/ -e s/.png/_quer_zentriert.pdf/ -e s/.gif/_quer_zentriert.pdf/ -e s/.aspx/_quer_zentriert.pdf/ -e s/.webp/_quer_zentriert.pdf/`" ] && kdialog --icon=ks-error --title="zu PDF konvertieren" --passivepopup="PDF existiert bereits!" ; [ ! -f "`echo "%f" | sed -e s/.jpg/_quer_zentriert.pdf/ -e s/.jpeg/_quer_zentriert.pdf/ -e s/.png/_quer_zentriert.pdf/ -e s/.gif/_quer_zentriert.pdf/ -e s/.aspx/_quer_zentriert.pdf/ -e s/.webp/_quer_zentriert.pdf/`" ] && convert "%f" -resize 1753x1240 -gravity center -extent 1753x1240 -units PixelsPerInch -density 150x150 "`echo "%f" | sed -e s/.jpg/_quer_zentriert.pdf/ -e s/.jpeg/_quer_zentriert.pdf/ -e s/.png/_quer_zentriert.pdf/ -e s/.gif/_quer_zentriert.pdf/ -e s/.aspx/_quer_zentriert.pdf/ -e s/.webp/_quer_zentriert.pdf/`" && exiftool -overwrite_original -all= "`echo "%f" | sed -e s/.jpg/_quer_zentriert.pdf/ -e s/.jpeg/_quer_zentriert.pdf/ -e s/.png/_quer_zentriert.pdf/ -e s/.gif/_quer_zentriert.pdf/ -e s/.aspx/_quer_zentriert.pdf/ -e s/.webp/_quer_zentriert.pdf/`"
Ja, manchmal ist es so offensichtlich, doch trotzdem sieht man den Wald vor lauter Bäumen... äh... Code nicht mehr.