Wie bekomme ich mit Gimp eine andere transparente Farbe als Schwarz?

Ich brauche zwei 100% transparente Farben (ich meine unsichtbar) Schwarz (000000) und Weiß (ffffff).

Wenn ich versuche, eine 100% transparente Farbe zu haben, setzt Gimp sie immer auf Schwarz (0x00000000 ARGB), auch wenn ich Weiß wähle.

Ist es möglich, mit Gimp etwas anderes als schwarze transparente Farbe zu erhalten?
oder muss ich zum Beispiel Alpha = 1 verwenden, um eine andere Farbe zu erhalten? (<-- das funktioniert und es ist in Ordnung, aber für mich ist 0% besser)

BEARBEITEN: Wie kann ich die transparente Bereichsfarbe in eine andere transparente Farbe ändern?
Zum Beispiel von Schwarz Alpha = 0 zu Weiß Alpha = 0.

Ich denke, diese Frage scheint seltsam zu sein, ich habe keine Kenntnisse in Gimp oder "Grafikdesign", aber ich arbeite an einer Software, die wissen muss, ob transparente Pixel schwarz oder weiß sind (nur für unsichtbare Pixel).

Wenn das Pixel unsichtbar ist, welchen Unterschied macht es?
Warum sollte ein Softwaresystem wissen müssen, ob ein transparentes Pixel schwarz oder weiß ist? Wenn Sie so viel Kontrolle über "Farbe" benötigen, verwenden Sie vielleicht einen Texteditor und schreiben Sie eine SVG-Grafik?
Aus Effizienzgründen füge ich einige Bilder zusammen, um meinen Code schneller zu machen, und ich brauche zwei Farben, um dies zu tun. Ich kann mit meinem eigenen Code das, was ich brauche, in weißes Alpha = 0% umwandeln, also habe ich die Lösung. Ich frage mich nur, wie ich das mit Gimp machen kann (wenn es möglich ist)
Transparente Pixel behalten die Farben, die sie hatten - zumindest für ein Bild, das immer nur eine einzige Ebene hat. Dies ist mit Ihrem Workflow möglicherweise nicht machbar - können Sie Ihren Prozess etwas detaillierter beschreiben?
@Michael Schumacher Du hast Recht, ich habe (programmgesteuert) die Farbe einiger Bereiche geändert und Gimp behalte diese Farbe, also ist "schwarz" in meiner Frage falsch. Ich habe versucht, den Bereich mit Weiß zu füllen und dann "Color to Alpha" und es funktioniert. Vorher habe ich versucht, es mit "Eimerfüllung" und Deckkraft auf 0 zu tun. Es gibt vielleicht einen besseren Weg, es zu tun. Danke, wenn Sie eine Antwort mit diesem oder einem anderen Ansatz hinzufügen, werde ich sie akzeptieren.
@scott zum Beispiel, wenn Ihre 3D-Engine das Ergebnis in Texel filtert, betrachtet sie die Kanäle separat, wenn Sie dann die Mip-Map erstellen, beginnt die Farbe auf die Texel zu bluten. Für die Filterung Ihres Modells kann dies also von großer Bedeutung sein. Möglicherweise benötigen Sie auch nicht multiplizierte Daten / multiplizierte Daten usw.
Das hat nicht wirklich etwas mit Grafikdesign zu tun, ist aber trotzdem willkommen. Gimp habe ich gerade nicht zur Hand, aber vermutlich kann man die einzelnen Kanäle im Kanaldialog bearbeiten. Das Tool erledigt dies nicht für Sie, Sie müssen dies manuell tun.
In Photoshop kann man bei gedrückter Strg-Taste auf den Alphakanal klicken, um den Kanal in eine Auswahl umzuwandeln. Wenn Sie dann zu den Farbkanälen zurückkehren, können Sie die Farben invertieren. Dies würde alles Schwarz in Weiß und alle Grautöne in ihre "Komplemente" umwandeln. Das Alpha wäre davon nicht betroffen.

Antworten (1)

Ok, lass uns versuchen, eine Antwort zu schreiben ...

0. Etwas technischer Hintergrund

Viele Bilddateiformate können tatsächlich die Farbwerte transparenter Pixel beibehalten. PNG, TIFF, TGA, BMP gehören dazu, sowie die Arbeitsformate der meisten (oder wahrscheinlicher aller) ernsthaften Bildbearbeitungsprogramme.

Sie können sich Pixel als farbig und transparent gemäß einem RGBA-Vierfach vorstellen, mit Rot, Grün, Blau und Alpha in einem Bereich von zB 0-255, 0,0-1,0, 00-FF oder was auch immer geeignet ist (fortgeschrittene Benutzer werden das bemerken diese Beispiele sind etwas 8-bpc-zentriert)).

Der A-Wert von 0, was normalerweise vollständig transparent bedeutet, macht die RGB-Werte der Pixel nicht per se unbrauchbar, Sie sehen sie möglicherweise gerade nicht.

1. Der Baustein

Nehmen wir also ein einfaches PNG-Bild mit einigen Farben und etwas Transparenz. Die hier gezeigte wurde durch einige solide Rauschwolken erstellt, die einem pastellfarbenen Farbverlauf mit voller Sättigung zugeordnet wurden, und die ursprünglichen soliden Rauschwolken wurden als Ebenenmaske angewendet:

Solides Rauschen, einige Farben und Transparenz

Wenn Sie dieses Bild in GIMP oder einer vergleichbaren Anwendung laden und die Farbwerte der transparenten (in Ihrem Browser: Hintergrundfarbe, bei mir weiß) Teile überprüfen, werden Sie feststellen, dass die RGB-Farbwerte intakt sind. Sie können dafür das Farbwähler-Tool verwenden.

Solange Sie nur auf einer Ebene bleiben, können Sie Werkzeuge wie den Radiergummi oder Verfahren wie Ebenenmasken darauf anwenden - die Farben oder transparenten Pixel bleiben erhalten. Wenn Sie die Transparenz im Ebenendialog sperren, können Sie die Farbe sogar mit Malwerkzeugen ändern, ohne die Transparenz zu beeinflussen.

Was Sie nicht tun können, ist, Malwerkzeuge mit auf 0 eingestellter Deckkraft zu verwenden - dies hat keine Auswirkung.

2. Wie man scheitert

Das ist also schön und gut, solange Sie sich an eine Schicht halten. Aber was ist, wenn Sie mehr tun möchten, zum Beispiel weitere Ebenen hinzufügen möchten, z. B. etwas Text? Nun, verwenden Sie den angegebenen Text, um genau dies zu tun, exportieren Sie ihn als PNG und erhalten Sie:

Füge eine Ebene hinzu und du FEHLST – unsichtbares Schwarz

Laden Sie das obige Bild in GIMP und untersuchen Sie die transparenten Teile, und Sie werden sehen, was passiert ist. Sieht gut aus, aber das ist eine der einfachsten Möglichkeiten zu scheitern.

Fügen Sie eine Ebene hinzu, und die transparenten Teile werden unsichtbar schwarz, wenn Sie die Ebenen zu einer zusammenführen – etwas, das zum Beispiel in den Dateiexport-Plug-Ins gemacht wird. Eine etwas willkürliche technische Entscheidung, an der bisher aber noch niemand etwas geändert hat. Und es so zu ändern, dass die Ergebnisse vorhersehbar werden, könnte eine Art Herausforderung sein.

3. Wie man erfolgreich ist

Dafür gibt es jedoch einen Workaround. Die einzige Methode, um das Bild so zu erhalten, wie es ist, ist Kopieren/Ausschneiden und Einfügen - etwas logisch, weil Sie nicht einen Teil eines Bildes kopieren oder ausschneiden möchten, es woanders einfügen und einige willkürliche Bilddaten geändert finden, mit Ausnahme der Teile, an denen Sie ausschneiden und wo Sie einfügen, natürlich.

Wenn Sie also eine Textebene hinzugefügt haben, können Sie sie aus dem Bild ausschneiden, sofort einfügen und dann auf der einen Ebene verankern, die Ihr Bild haben soll. Untersuchen Sie das resultierende Bild unten, Sie werden feststellen, dass die transparenten Teile ihre Farbdaten beibehalten haben:

Kopieren oder schneiden Sie, fügen Sie ein und verankern Sie Ihre transparenten Farbdaten

Dieser Arbeitsablauf erfordert natürlich etwas Planung und Zeit - Sie werden feststellen, dass Sie das Bild möglicherweise zuerst als richtige XCF-Datei mit mehreren Ebenen einrichten und es so speichern und dann die Ebenen einzeln in eine neue, temporäre Datei kopieren und verankern sie in der richtigen Reihenfolge nach jeder Paste. Auf diese Weise bleiben jedoch die Farbdaten transparenter Pixel erhalten.