(Stapelverarbeitung) Konvertieren eines BMP in ein PNG mit Transparenz

9783
dtech

Ich habe + - 500 .bmps, die ich in .png-Dateien konvertieren möchte. Es wäre besonders schön, wenn die Farbe Weiß (#FFFFFF) der ursprünglichen BMPs in den .png's in transparent umgewandelt werden könnte.

PNG-8 ist ausreichend, da die BMPs 16-Farben haben.

Ich würde ein Befehlszeilentool vorziehen, das ich in eine Batchdatei einfügen kann, aber jedes wäre nützlich. Kennen Sie ein solches Werkzeug?

edit: Das Betriebssystem, das ich am meisten benutze, ist Windows 7 x64, aber ich habe auch Cygwin und verschiedene Linux-Versionen

2

2 Antworten auf die Frage

5
Linker3000

ImageMagick kann dies - schauen Sie sich den Befehl Konvertieren an, mit dem Sie eine Farbe angeben können, die als Transparenzwert verwendet werden soll:

http://www.imagemagick.org/script/convert.php

Das erscheint definitiv vielversprechend. `` `conver -transparent white source.bmp dest.png`` macht genau das, was ich will, jedoch unterstützt mogrify nur mehrere Dateien und es hat nur` `-transparent-color```, was nicht wirklich funktioniert. Weiter suchen dtech vor 12 Jahren 2
Letztendlich habe ich nur ein Skript mit einer Schleife verwendet. Für diejenigen, die Interesse hatten, war der effektive Code `` convert -transparent white $ f $ png``` dtech vor 12 Jahren 0
@dtech: und dein System war Windows, Linux, Mac, Android ....? woliveirajr vor 12 Jahren 0
@woliveirajr Es war eine Bash-Shell, andere Shells sollten ähnliche Konstrukte zulassen dtech vor 12 Jahren 0
Wenn Sie es als Bash-Skript für die Stapelverarbeitung in einem ganzen Ordner voller Dateien ausführen möchten: Für Datei in * .png; konvertiere "$ " -transparent '# ffcc66' "batch / $ "; erledigt Sameer Shemna vor 9 Jahren 0
2
woliveirajr

Mit welchem ​​Betriebssystem usw.?

Ein Vorschlag - generische Antwort: Versuchen Sie ImageMagik .

Gleich von der ersten Seite können Sie erhalten:

Formatkonvertierung: Konvertieren Sie ein Bild von einem Format in ein anderes (z. B. PNG in JPEG). Transparenz: Teile eines Bildes unsichtbar machen.

Anwendungsbeispiel:

convert file.jpg -transparent-color '#ffffff' file.png