WebP-Dateien sind eine der modernen Webtechnologien, ein kompaktes und platzsparendes Dateiformat, das von Google in den letzten Jahren entwickelt wurde und webdienstfreundlich ist. Während es für Website-Administratoren praktisch sein mag, ist die Unterstützung im Allgemeinen noch nicht vollständig. Zum Beispiel erlauben einige Websites nur Uploads im JPG/PNG-Format, und Sie können WebP-Formatdateien nicht direkt hochladen.
Es gibt zwei Hauptmethoden zum Konvertieren von WebP-Dateien in JPG/PNG-Dateien.
Konvertierung mit ffmpeg
ffmpeg ist wahrscheinlich bei den meisten Leuten installiert. Konvertieren Sie WebP-Dateien wie folgt in JPG-Dateien:
ffmpeg -i file.webp out.jpg
Wenn Sie es noch nicht installiert haben, installieren Sie es:
sudo apt update ; sudo apt install ffmpeg -y
Wenn Sie keine WSL- oder Linux-Umgebung haben und es unter Windows installieren möchten, ist die Verwendung von choco eine gute Option. Für die Installation und Verwendung von chocolatey verweisen Sie bitte auf andere Artikel. Bitte verwenden Sie die Suchfunktion dieses Blogs.
choco install ffmpeg
Konvertierung mit dwebp
Diese Methode verwendet den dwebp-Befehl, der im webp-Paket enthalten ist, zur WebP-Konvertierung.
Installieren Sie webp:
sudo apt update ; sudo apt install webp -y
Verwenden Sie es wie folgt zur Konvertierung:
dwebp file.webp -o abc.png
Übrigens steht das “d” in “dwebp” für “decompress”.
Beachten Sie, dass die Konvertierung mit ffmpeg gut für jpg-Dateien ist, aber es scheint ein Problem zu geben, bei dem Ausgabedateien für png groß werden. Für die png-Konvertierung ist es besser, dwebp zu verwenden.
It is good for jpg image, but png format is very large
(Referenz)
Alle WebP-Dateien in einem Ordner in JPG konvertieren
Unten ist ein Anwendungsbeispiel. Mit dem folgenden Skript konvertieren wir alle WebP-Dateien in einem Ordner in JPG.
for i in *.webp; do ffmpeg -y -i "$i" "$(basename "${i%.*}").jpg"; done;
Sofortige Konvertierung zu JPG beim Hinzufügen von WebP-Dateien zu einem Ordner
Dies ist ein Anwendungsbeispiel.
Ich habe ein einfaches Skript geschrieben, das WebP-Dateien sofort in JPG konvertiert und die WebP-Dateien löscht, wenn sie einem Ordner hinzugefügt werden. Es ist praktisch, also verwenden Sie es bitte.
Speichern Sie das folgende Skript in tmp.sh:
for i in *.webp; do ffmpeg -y -i "$i" "$(basename "${i%.*}").jpg"; done; rm *.webp
Verwenden Sie nodemon, um Änderungen im Ordner zu erkennen und das tmp.sh-Skript bei Bedarf auszuführen:
nodemon -e webp --exec ./tmp.sh
Wenn Sie nodemon noch nicht installiert haben, installieren Sie es. Für die Installation von node.js und npm mit nvm verweisen Sie bitte auf andere Artikel. Bitte verwenden Sie die Suchfunktion dieses Blogs.
npm i -g nodemon