AGB  ·  Datenschutz  ·  Impressum  







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

Farbe aufhellen

Ein Thema von Hansa · begonnen am 25. Aug 2004 · letzter Beitrag vom 25. Aug 2004
Antwort Antwort
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#1

Farbe aufhellen

  Alt 25. Aug 2004, 20:51
Hi,

wie kann ich Farben etwas heller machen ? Ich habe gesehen, daß sie so definiert sind :

$000080 (clMaroon). Das ist mir aber zu dunkel. 8)
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von FAlter
FAlter

Registriert seit: 21. Jul 2004
Ort: Ostfildern
1.096 Beiträge
 
FreePascal / Lazarus
 
#2

Re: Farbe aufhellen

  Alt 25. Aug 2004, 21:24
Dann nimm doch z. B. $4040C0 - einfach den HEX-Wert erhöhen, $BBGGRR, also immer 1 Byte pro Farbe RGB
Felix Alter
  Mit Zitat antworten Zitat
Benutzerbild von fiasko
fiasko

Registriert seit: 10. Dez 2002
Ort: Dresden
506 Beiträge
 
#3

Re: Farbe aufhellen

  Alt 25. Aug 2004, 21:30
Hallo,

also das RGB Farbmodell eignet sich i.A. nicht für solche Sachen. Wenn man die Farbe aber z.B. in das YUV Modell (Y~Helligkeit, U+V~Farbton) umrechnet kann man einfach den Helligkeitsanteil erhöhen.

[edit]
Ganz gute Info's gibt's hier: YUV-Farbmodell - Wikipedia
[/edit]
Thomas Liske
Posts comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#4

Re: Farbe aufhellen

  Alt 25. Aug 2004, 21:59
wenn ich das richtig sehe sind HEX-Farbwerte 8-stellig.

also nicht $000080 sondern
$XX000080, wobei XX = Helligkeit. Stimmt das ? Außerdem hat jemand mal hier im Forum ein Programm gepostet, das die Hex-Werte angezeigt hat. Weiß wer noch wo das war ?
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#5

Re: Farbe aufhellen

  Alt 25. Aug 2004, 22:21
Soweit ich weiß (Webdesign) sind Hex-Werte 6-Stellig (je 2 für RGB).

um #000080 aufzuhellen fügt man einfach von jeder Farbe etwas hinzu.

Also z.B. #101090
  Mit Zitat antworten Zitat
Benutzerbild von fiasko
fiasko

Registriert seit: 10. Dez 2002
Ort: Dresden
506 Beiträge
 
#6

Re: Farbe aufhellen

  Alt 25. Aug 2004, 22:31
Zitat von jfheins:
um #000080 aufzuhellen fügt man einfach von jeder Farbe etwas hinzu.

Also z.B. #101090
Das ist definitiv FALSCH (außer du hast kein menschliches Auge).

Das geht mit RGB nicht. Nimm mal den Windoof Standard Farbdialog (starte Paint, Doppelklick auf ne Farb, "Farbe definieren klicken): eine Farbe die nicht Grau ist auswählen und dann rechts den Helligkeitsbalken verschieben und staunen was die Werte unten (RGB und YUV) machen!
Thomas Liske
Posts comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
  Mit Zitat antworten Zitat
Keldorn

Registriert seit: 6. Mär 2003
Ort: Meißen
876 Beiträge
 
Delphi 10.1 Berlin Professional
 
#7

Re: Farbe aufhellen

  Alt 25. Aug 2004, 22:37
wie fiasko angesprochen hat, machs mit yuv- oder hls farbmodell. Wenn du dort die farben heller/dunkler machst, behalten sie ihre "Farbe" und gehen nicht in ein grau über.
Delphi unterstützt auch das HLS-farbmodell, das ist in der Hilfe blöderweise überhaut nicht erwähnt. Für leute ohne Pro ist das ein wenig ungünstig, da sie die sourcen nicht haben.
Ich find insbesondere coloradjustmentluma toll, die nur die Helligkeit verändert. die 20 gibt die Helligkeitsänderung an, - wenns dunkler werden soll und colortorgb nicht vergessen
Delphi-Quellcode:
uses graphutil !
blabla.Color:=ColorAdjustLuma(colortorgb(clmaroon),20,false);
edit @hansa: was ich mich immer wieder Frage: warum habe ich bei deinen Beiträgen immer ein Déjá-vu ???
http://www.delphipraxis.net/internal...ighlight=farbe

Mfg Frank

Lükes Grundlage der Programmierung:
Es wird nicht funktionieren
(Murphy)
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#8

Re: Farbe aufhellen

  Alt 25. Aug 2004, 22:37
Moin!

Zitat von Hansa:
wenn ich das richtig sehe sind HEX-Farbwerte 8-stellig.

also nicht $000080 sondern
$XX000080, wobei XX = Helligkeit. Stimmt das ? Außerdem hat jemand mal hier im Forum ein Programm gepostet, das die Hex-Werte angezeigt hat. Weiß wer noch wo das war ?
Das dies obere Byte die Helligkeit angibt gilt nicht bei den RGB Farben in Delphi für die WinAPI/VCL. Du meinst die Benutzung des oberen Bytes als Alpha-Channel für die Angabe der Helligkeit. Dies wird von Grafikkarten z.T. benutzt für Texturen aber auch bei manchen DirectX Bildschirmmodien (erkennbar an der ARGB Angabe (Alpha, Rot, Grün, Blau)).

In der VCL gibt das obere Byte an, ob die unteren 3 Bytes die RGB Werte sind oder ein Palettenindex. Dann gibt es noch die Angabe ob die RGB Farbe aus dem aktuellen lokalen DC kommt bzw. diesem angepasst werden soll. Näheres findet man dazu sofort, wenn man unter der Hilfe zu dem Typ TColor schaut...

MfG
Muetze1
  Mit Zitat antworten Zitat
Antwort Antwort


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 18:07 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