AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

roten Farbwert aus TColor extrahieren ??

Ein Thema von EccoBravo · begonnen am 1. Apr 2008 · letzter Beitrag vom 1. Apr 2008
Antwort Antwort
Benutzerbild von EccoBravo
EccoBravo

Registriert seit: 19. Okt 2004
Ort: Neuruppin
524 Beiträge
 
Delphi 2007 Architect
 
#1

roten Farbwert aus TColor extrahieren ??

  Alt 1. Apr 2008, 16:15
Hallo allerseits,

Ihr habt sicherlich meine letzte Frage gelesen?
Weiterführend darauf nun folgendes:
Wie kann ich aus einem TColor-Wert den roten Farbanteil extrahieren (RGB(rt,gn,bl)...)?
Ich will ein Image in das Rotbild, Grünbild und Blaubild zerlegen.

Danke für Hilfe

E. B.
Wahre Aussage :=
Katzen, die bellen sind keine Kaninchen.

Der Kreisverkehr ist eine spezielle Form der Einbahnstraße
  Mit Zitat antworten Zitat
iGoA

Registriert seit: 9. Jul 2007
69 Beiträge
 
#2

Re: roten Farbwert aus TColor extrahieren ??

  Alt 1. Apr 2008, 16:18
entweder
rot := (color and $ff0000) shr 16;

oder

rot := (color and $ff);

eines von beiden. ich verwechsel manchmal, in welchem Byte rot und blau gespeichert sind.
  Mit Zitat antworten Zitat
Benutzerbild von Fussball-Robby
Fussball-Robby

Registriert seit: 22. Okt 2007
Ort: Nähe Köln
1.063 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: roten Farbwert aus TColor extrahieren ??

  Alt 1. Apr 2008, 16:21
@iGoA: $ff

Hier ne Prozedur für alle R, G & B..:
Delphi-Quellcode:
procedure TColor2RGB(Const Color: TColor; var R, G, B: Byte);
begin
  R := Color and $FF;
  G := (Color shr 8) and $FF;
  B := (Color shr 16) and $FF;
end;
Mfg
Robert L.
Der folgende Satz ist richtig!
Der vorherige Satz ist falsch!

Paradox
  Mit Zitat antworten Zitat
Benutzerbild von Kroko1999
Kroko1999

Registriert seit: 21. Apr 2005
Ort: Spremberg
455 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: roten Farbwert aus TColor extrahieren ??

  Alt 1. Apr 2008, 16:24
Zitat von iGoA:
entweder
rot := (color and $ff0000) shr 16;

oder

rot := (color and $ff);

eines von beiden. ich verwechsel manchmal, in welchem Byte rot und blau gespeichert sind.
(1) ist Falsch, dass ist Blau
(2) Color and $FF;

oder nimm GetRValue(Color);
Da sprach der Stumme zum Blinden: "Du wirst sehen ..."
oder
Wer lesen kann, ist klar im Vorteil!
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#5

Re: roten Farbwert aus TColor extrahieren ??

  Alt 1. Apr 2008, 16:24
Und wieso nicht die fertigen Funktionen nutzen? Also MSDN-Library durchsuchenGetRValue(), MSDN-Library durchsuchenGetGValue() und MSDN-Library durchsuchenGetBValue()?

Und ich möchte nochmal darauf hinweisen, das bestimmte Farbkonstanten welche vom aktuellen Farbschema abhängig sind (z.B. clWindow, clWindowText, clCaption, etc) keine RGB Werte enthalten! Diese erhält man definitiv nach der Funktion Delphi-Referenz durchsuchenColorToRGB(), egal welcher Art von TColor man übergibt. Ausnahme hierbei ist definitiv Delphi-Referenz durchsuchenclNone.
  Mit Zitat antworten Zitat
Benutzerbild von EccoBravo
EccoBravo

Registriert seit: 19. Okt 2004
Ort: Neuruppin
524 Beiträge
 
Delphi 2007 Architect
 
#6

Re: roten Farbwert aus TColor extrahieren ??

  Alt 1. Apr 2008, 16:25
Prima, danke allerseits.
Die fertigen Funktionen sinds

E. B.
Wahre Aussage :=
Katzen, die bellen sind keine Kaninchen.

Der Kreisverkehr ist eine spezielle Form der Einbahnstraße
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 14:14 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