Blog Digitalgesellschaft Verwaltungsbetrieb Textarchiv Textarchiv Walter Kirk (✝) Impressum
Bildformat ändern und Wasserzeichen einbinden
1 Vorbemerkung2 Quelle3 Voraussetzungen4 Bash-Skript4.1 Bildformat ändern4.2 Wasserzeichen einbinden4.3 Fertiges Skript5 XnConvertLiteraturZusammenfassung
Für die eigene Internetpräsenz ist es durchaus notwendig, ggf. die Bilder mit einem niedrigen Speicherbedarf und trotzdem guter Qualität zu erstellen sowie mit einem Wasserzeichen zu versehen und zu veröffentlichen.
Bei mehreren Bildern ist es ratsam, dies teilweise automatisch erstellen zu lassen, und zwar 1. die Änderung des Bildformates und 2. das Einbinden des Wasserzeichens.
Unter Linux-Betriebssystemen lässt sich dies mit Programmen nicht immer in einem Vorgang bewerkstelligen. Hilfreich ist deshalb die Nutzung eines Bash-Skriptes zur Formatumwandlung und zum Einbinden des Wasserzeichens
Der Blogbeitrag Wasserzeichen unter Linux mit composite in Bilder einfügen von Christoph Maya zeigt die Einbindung des Wasserzeichens in Form eines Bash-Skriptes auf.
Auf debian-basieren Linux-Distributionen ist es notwendig, ggf. ImagMagick nicht aus den Paketquellen zu beziehen, sondern die Installation gemäß den Anweisungen der Herausgeber durch zu führen. Die Installation ist hier aus ausführlich beschrieben. Dies kann deshalb notwendig sein, damit ImageMagick auch .avif erstellen und bearbeiten kann.
Benötigt werden zwei Hilfsprogramme: convert und composite.
Zur Umwandlung wird hier voraus gesetzt, dass Bilder als .png vorliegen.
Mit convert erfolgt die Konvertierung in das Format .avif und .webp. Damit alle .png umgewandelt werden, wird die Ausführung festgelegt mit:
xxxxxxxxxxfor image in *.png ; do convert "$image" "${image%.*}.avif" ; done
xxxxxxxxxxfor image in *.png ; do convert "$image" "${image%.*}.webp" ; done
Das vorgesehene Wasserzeichen sollte in Form einer Bilddatei bereits vorliegen (.png etc.). Zum Einbinden wird composite genutzt:
xxxxxxxxxxfor filename in ./*.*; doecho "Füge Watermark in Datei $filename ein"composite -gravity southwest -geometry x20+20+20 /speicherort/wasserzeichen.png $filename ./done/$filenamedone
Im Beispiel wird das Zeichen mit der Option -gravity southwest links Unten eingefügt.
Das Bash-Skript mit beiden Teilen umfasst folgende Angaben:
xxxxxxxxxx!/bin/bash# Formate erstellenfor image in *.png ; do convert "$image" "${image%.*}.webp" ; done# funktioniert wenn Neuinstallation# https://imagemagick.org/script/install-source.phpfor image in *.png ; do convert "$image" "${image%.*}.avif" ; done# Quelle: https://mayach.de/wasserzeichen-unter-linux-mit-composite-in-bilder-einfuegen/# Verzeichnis anlegenmkdir -p done# Wasserzeichen einfügenfor filename in ./*.*; doecho "Füge Watermark in Datei $filename ein"composite -gravity southwest -geometry x20+20+20 /speicherort/wasserzeichen.png $filename ./done/$filenamedone
Die erstellten und ergänzten Dateien werden im Ordner /done im Arbeitsverzeichnis abgelegt.
Im Terminal wird bei Ausführung angezeigt:
xxxxxxxxxxFüge Watermark in Datei ./~/name.avif einFüge Watermark in Datei ./~/name.png einFüge Watermark in Datei ./~/name.webp ein
Wer diese beiden Aufgaben lieber mit einem Programm erledigen will, der kann sich das Tool XnConvert ansehen. Die Einbindung eines Wasserzeichens lässt sich unter Verarbeitung, die Umwandlung unter Ausgabe voreinstellen.
Man Page
composite https://www.commandlinux.com/man-page/man1/composite.1.html
convert https://linux.die.net/man/1/convert
Installation ImageMagick
Imagemagick Source https://imagemagick.org/script/install-source.php
Skript Grundmuster für Wasserzeichen
Maya, Christoph: Wasserzeichen unter Linux mit composite in Bilder einfügen
Für eine Umwandlung und das Einfügen eines Wasserzeichens reicht das vorliegende Skript zur Stapelverarbeitung aus. Zusätzliche Programme werden nicht unbedingt benötigt. Wichtig ist die Abstellung auf die eigenen Bedürfnisse und Verhältnisse.
Wolfgang Kirk

Veröffentlicht: 2023-01-02 aktualisiert: 2024-02-05, 11:00 Uhr
