Batch ersetzt Farbe durch Transparenz

Ich habe eine sehr große Anzahl von PNG-Bildern (zu viele, um sie praktisch einzeln zu erstellen) mit einem hellrosa Hintergrund und möchte die Hintergrundfarbe durch Transparenz ersetzen. Wenn dies nicht möglich oder besonders schwierig ist, wäre es sinnvoll, die angegebene Farbe durch Weiß zu ersetzen.

Ich habe Gimp, aber kein Photoshop und bin mit der Befehlszeile nicht besonders vertraut. Wenn eine Lösung dies erfordert, zeigen Sie bitte jeden Schritt. Es wäre großartig, dies tun zu können, jede Hilfe wäre willkommen.

Antworten (3)

Ich weiß, dass Sie gesagt haben, dass Sie mit Befehlszeilentools nicht vertraut sind, aber ImageMagick kann dies tun:

Ersetzen Sie eine bestimmte Farbe

convert balloon.gif -transparent blue balloon_trans.gif

Geben Sie hier die Bildbeschreibung ein Geben Sie hier die Bildbeschreibung ein Geben Sie hier die Bildbeschreibung ein

Wo balloon.gifist das Quellbild, -transparentgibt an, dass Sie ein transparentes Hintergrundbild wünschen, blueist die Farbe, die Sie ersetzen möchten, und balloon_trans.gifist das fertige Bild.

Dies geschieht unter der Annahme, dass Ihr "helles Rosa" nicht Teil eines der Bilder ist. Für eine etwas intelligentere Hintergrundentfernung (Floodfill) sehen Sie sich dieses Tutorial an: Masking Simple Backgrounds (Floodfill)

Dies kann ein wenig haarig werden, und einige der dort angegebenen Optionen sind wahrscheinlich nicht für das erforderlich, was Sie versuchen, also können Sie, wie @graphics man vorschlägt background, den Befehl ergänzen


Wenn Sie mir sagen können, welches Betriebssystem Sie verwenden, und ein Beispielbild, kann ich Ihnen mit einem Skript helfen, dies für viele Bilder zu automatisieren


Spezifisch für Ihre Situation:

Installieren Sie zuerst ImageMagick . Möglicherweise müssen Sie nach der Installation neu starten, damit Ihre PATH-Variable aktualisiert wird (ich habe es getan).

Starten Sie nach der Installation eine Eingabeaufforderung (Startmenü, cmdgeben Sie ein, drücken Sie die Eingabetaste).

Sie müssen die Verzeichnisse ändern, in denen die Bilder gespeichert werden. Geben Sie für Ihre Situation den folgenden Befehl ein:

cd C:\Users\Eric\Pictures\pngs\logos

Jetzt müssen wir einen Ordner erstellen, in dem alle Bilder gespeichert werden:

mkdir batch

Und jetzt der Befehl zum Konvertieren aller Bilder:

FOR %G IN (*.png) DO convert "%G" -transparent #FF00FF "batch\%G"

Hinweis: Verwenden Sie bei ImageMagick v7 magickanstelle von convert, as so

FOR %G IN (*.png) DO magick "%G" -transparent #FF00FF "batch\%G"

Wenn alles reibungslos geklappt hat, sollten sich die neu gespeicherten Bilder in dem von Ihnen erstellten Stapelordner befinden.

Geben Sie hier die Bildbeschreibung ein Geben Sie hier die Bildbeschreibung ein Geben Sie hier die Bildbeschreibung ein

gute lösung, falls sich jemand fragt gleich linux bash: for file in *.png ; do convert "${file}" -transparent '#ffcc66' "batch/${file}" ; erledigt
Für Mac scheint dies verwandt zu sein: superuser.com/questions/773590/… Danke!
Das funktioniert nicht wie Gimp. Wenn Sie ein weißes Pixel mit Alpha 0,5 auf einem schwarzen Pixel haben und die schwarze Farbe entfernen möchten, bleibt das graue Pixel erhalten.

Wenn Sie Gimp verwenden und nicht Imagemagick verwenden möchten, sollten Sie sich David's Batch Processor (DBP) ansehen . Es ist ein Plug-In für Gimp zur Stapelverarbeitung. Hinweis : Ich habe es nie benutzt oder getestet, aber es war etwas, das ich schon einmal gesehen habe. Wenn Sie Photoshop hätten, könnte ich Ihnen zeigen, wie Sie den Stapel oder die Aktion verwenden.

Ich habe das und habe es zum Massenzuschneiden dieser Bilder verwendet, aber es scheint keine Option zum Ersetzen von Farben zu geben. Vielleicht übersehe ich es aber oder habe eine alte Version?
Ich weiß nicht. Ich kenne das Plug-in nur, weil ein Kunde es zur Massenbearbeitung von Bildern verwendet hat und eine Fehlermeldung erhalten hat. Wie John gepostet hat, ist Imagemagick eine leistungsstarke Option und könnte alle Ihre Probleme lösen. Die Seite ist sehr detailliert. Siehe imagemagick.org/script/index.php

Das funktionierte wie ein Zauber für mich:

http://photobatch.wikidot.com/action-color-to-alpha

Phatch ist ein Photo Batch Processor. Color to Alpha Action macht genau das, wonach Sie suchen:

"Der Wert der Farbe, die transparent werden soll"