AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

RGB zu Alpha

Ein Thema von EWeiss · begonnen am 17. Aug 2018 · letzter Beitrag vom 21. Aug 2018
Antwort Antwort
Seite 4 von 4   « Erste     234   
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.763 Beiträge
 
Delphi 11 Alexandria
 
#31

AW: RGB zu Alpha

  Alt 21. Aug 2018, 09:21
Standard ist eigentlich die Farbe eines Eckpixels als Transparenz anzunehmen. Ich glaube es war die linke untere Ecke. Kann mich aber auch täuschen.

Edith fand in den Microsoft Richtlinen zum Icon Design "Use magenta (R255 G0 B255) as the background transparency color."


Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann

Geändert von Sherlock (21. Aug 2018 um 09:24 Uhr)
  Mit Zitat antworten Zitat
Schokohase
(Gast)

n/a Beiträge
 
#32

AW: RGB zu Alpha

  Alt 21. Aug 2018, 09:25
Wie gut, dass es Dokumentationen gibt

http://docwiki.embarcadero.com/Libra...ansparentColor
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.685 Beiträge
 
Delphi 11 Alexandria
 
#33

AW: RGB zu Alpha

  Alt 21. Aug 2018, 09:33
Also wenn ich ein Icon habe, Neon-Rote Umrandung mit Transparenz in der Mitte würde mir doch eine Abfrage nach oben/links <> unten/links in beiden Fällen meinen Rahmen löschen, da muss ich noch mal lesen oder ich verstehe das gerade falsch.
Gehört ja eh nicht hier rein, tut mir leid.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Michael II

Registriert seit: 1. Dez 2012
Ort: CH BE Eriswil
721 Beiträge
 
Delphi 11 Alexandria
 
#34

AW: RGB zu Alpha

  Alt 21. Aug 2018, 11:00
Hallo AW

du schreibst, dass du die Luminanz und nicht den Grauwert verwenden willst.

Vergleiche aber

https://de.wikipedia.org/wiki/Luminanz

und

https://de.wikipedia.org/wiki/Grauwert

Deine in #24 gepostete Funktion
function TSkinEngine.Rgb2Gray(RGBValue: COLORREF): COLORREF; stdcall;

liefert dir also die von dir gesuchte Luminanz wie Schokohase in #27 zeigt.


Deine ursprüngliche Funktion hat auch extrem helle Farben wie RGB( 250 253 241 ) als sehr dunkel (0) bewertet.

Du hast in #24 eine Grafik gepostet, schwarz wird dort durch deine Funktion unsichtbar. Das ist doch genau das, was du von deiner Funktion erwartest.


Wenn du bereits vorhandene Icons korrekt darstellen willst, dann bringt dein Weg über "sehr dunkle Pixels => unsichtbar setzen" natürlich nicht den gewollten Effekt.


Gruss
Michael Gasser
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#35

AW: RGB zu Alpha

  Alt 21. Aug 2018, 11:39
Zitat:
Du hast in #24 eine Grafik gepostet, schwarz wird dort durch deine Funktion unsichtbar. Das ist doch genau das, was du von deiner Funktion erwartest.
Aber nicht das ganze Icon.
Du vergisst eins dabei das dieses keinen Alphawert kennt also in dem sinne da nur 16 Farben enthalten sind.
Bei meinem Hochauflösenden Icon von meinem Piano gibt es das Problem nicht und das ist komplett schwarz.

Das müsste dann deiner Meinung nach komplett unsichtbar sein.
Ich bleibe bei meiner Funktion Rgb2Alpha auch wenn Rgb2Gray fast das gleiche ist.
Irgendwann muss mal Schluss sein sonst beschäftige ich mich die nächsten 10 Jahre noch damit.

gruss

Geändert von EWeiss (11. Jul 2019 um 15:53 Uhr)
  Mit Zitat antworten Zitat
Michael II

Registriert seit: 1. Dez 2012
Ort: CH BE Eriswil
721 Beiträge
 
Delphi 11 Alexandria
 
#36

AW: RGB zu Alpha

  Alt 21. Aug 2018, 13:11
Ich vermute, dass dein "schwarzes Piano Bild" bereits Alphakanalwerte enthält BEVOR du dieses Bild deiner "...toAlpha" Bearbeitung fütterst. Dann macht deine Bearbeitung genau nix:

Wenn dem so ist, dann behältst du ja die bereits vorhandenen p>0 AlphaWerte des Bilds bei und beachtest das Funktionsresultat von "...toAlpha" ausschliesslich im Fall p=0 (transparent) - und wenn du im Fall p=0 Glück hast und an den p=0 Stellen der RGB Wert 0 ist, bleibt dein Icon durch deine Bearbeitung komplett unverändert.

if (p=0) then if (...toAlpha > 0) then p := 255;


Bei deinem "schwarzen Käfer Bild" hingegen fehlt der Alphakanal und du fügst einen Alphakanal mit deiner Bearbeitung hinzu. Dabei gilt: Genau alle Pixel, welche Helligkeit 0 aufweisen werden durch deine Bearbeitung durchsichtig. Deshalb erscheint die schwarze Farbe des Käfers transparent.


Wie erwähnt: Wenn du bereits bestehende Icons irgendwo hinmalen willst, dann ist es sicher besser, wenn du die Icons vor dem Anzeigen nicht mit deiner ...toAlpha bearbeitest.
Michael Gasser
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#37

AW: RGB zu Alpha

  Alt 21. Aug 2018, 13:13
Wenn ich mich recht entsinne galt "früher" für Windows Icons, insbesondere denen mit nur 16 Farben, dass clFuchsia als "Key"-Farbe, also Transparenz definiert wurde. Darüber hinaus gab es auch die Variante, dass eine zusätzliche 1-Bit Maske ergänzend zu dem Bitmap in der Datei ist. Bei moderneren Icons, insbesondere denen die intern als PNG hinterlegt sind und 32bpp haben, gibt es gleich einen kompletten 8 Bit Alphakanal der fest zum Bild gehört.

Wenn es sich also wirklich um Icons im Sinne von "liegt als .ico-Datei vor" handelt, dürfte das ganze eigentlich ohne jede "künstliche Generierung" von Transparenzen abhandelbar sein. Von daher bin ich etwas verwundert darüber, warum du das überhaupt machst.

Edit: Michaels Beitrag geht da in dieselbe Richtung würde ich schätzen.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#38

AW: RGB zu Alpha

  Alt 21. Aug 2018, 16:49
Zitat:
Wenn es sich also wirklich um Icons im Sinne von "liegt als .ico-Datei vor" handelt, dürfte das ganze eigentlich ohne jede "künstliche Generierung" von Transparenzen abhandelbar sein. Von daher bin ich etwas verwundert darüber, warum du das überhaupt machst.
Deshalb..

Zitat:
dann ist es sicher besser
Es ist nicht besser siehe link!
Was ist denn nun besser das erste oder zweite Icon.
Zitat:
Dann macht deine Bearbeitung genau nix:
Muss sie auch nicht, destotrotz muss ich alle Icons durchjagen.

gruss

Geändert von EWeiss (22. Aug 2018 um 04:59 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 4 von 4   « Erste     234   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:08 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz