Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

Multimedia

k23:k23.4:k23.4.2:k23.4.2.2:start

23.4.2.2 Klasse ColorInfo

Die Klasse ColorInfo (gb.image) präsentiert u.a. detaillierte Informationen zu einer Farbe. Die Klasse verfügt über die Eigenschaften Alpha, Color, Red, Green, Blue, Hue, Saturation und Value, die Sie auslesen oder setzen können. Der Datentyp für alle Eigenschaften ist Integer.

23.4.2.2.1 Eigenschaften

In der folgenden Tabelle werden die o.a. Eigenschaften der Klasse beschrieben:

ColorInfoIntervallBeschreibung
Alpha0..255Legt den Alpha-Wert fest oder gibt den Wert zurück.
Color 0..256³-1Legt den vollständigen Farb-Wert des ColorInfo-Objekts fest oder gibt den Wert zurück.
Red0..255Legt den Rot-Anteil der Farbe fest oder gibt den Wert zurück → RGB-Farbraum
Green0..255Legt den Grün-Anteil der Farbe fest oder gibt den Wert zurück → RGB-Farbraum
Blue0..255Legt den Blau-Anteil der Farbe fest oder gibt den Wert zurück → RGB-Farbraum
Hue0..359Legt den Farbton-Anteil der Farbe fest oder gibt den Wert zurück → HSV-Farbraum
Saturation0..255Legt den Anteil der Sättigung der Farbe fest oder gibt den Wert zurück → HSV-Farbraum
Value0..255Legt den Helligkeit-Anteil der Farbe fest oder gibt den Wert zurück → HSV-Farbraum

Tabelle 23.4.2.2.1 : Eigenschaften Klasse ColorInfo (gb.image)

23.4.2.2.2 Beispiele

Sie bekommen für eine beliebige Farbe iColor mit

Color[iColor]

ein ColorInfo-Objekt, von welchem Sie einerseits die RGB- und HSV-Informationen des verwendeten Farbraums sowie den Wert für den Alpha-Kanal auslesen können oder andererseits die RGB- und HSV-Farbanteile setzen!

Anschließend müssen Sie die geänderte Farbe aus den Farb-Anteilen generieren, wobei die nicht geänderten Farb-Anteile entweder mit Color[iColor].Green und Color[iColor].Blue oder mit hColorInfo.Green und hColorInfo.Blue ausgelesen und übernommen werden:

Public Sub btnColorChange_Click()
 
    Dim iColor As Integer
    Dim hColorInfo As ColorInfo
 
    iColor = CChooser1.SelectedColor	'-- Synonym for iColor = CChooser1.Value
    hColorInfo = Color[iColor] 		'-- A ColorInfo object is returned
'-- Print Color[iColor].Red 		'-- Reading out the red colour component with the [] operator
'-- Print hColorInfo.Red 			'-- Read out red colour component (alternative)
    hColorInfo.Red = 180 			'-- Change red colour component
    hColorInfo.Alpha = 140			'-- Change alpha value
'-- Print hColorInfo.Red 			'-- Read out the current red colour component
'-- Print hColorInfo.Alpha 		'-- Read out the current alpha value
    CChooser1.Value = Color.RGB(hColorInfo.Red, Color[iColor].Green, hColorInfo.Blue, hColorInfo.Alpha)
'-- Good alternative: CChooser1.Value = hColorInfo.Color
 
End

Hinweis: Die komplexen Methoden SetRGB(..) und SetHSV(..) der Klasse Color (gb.image) – mit deren Hilfe Sie den RGB(A)-Farbanteil oder HSV(A)-Farbanteil für jede Farbe einzeln(!) ändern können – sind schneller und deshalb vorzuziehen:

Public Sub btnSetRGB_Click()
 
  Dim iColor As Integer
 
  iColor = CChooser1.SelectedColor
  CChooser1.SelectedColor = Color.SetRGB(iColor, 180, Color[iColor].Green, Color[iColor].Blue, 140)
 
End

Download

Die Website verwendet zwei temporäre Session-Cookies. Diese technisch notwendigen Cookies werden gelöscht, wenn der Web-Browser geschlossen wird! Informationen zu Cookies erhalten Sie in der Datenschutzerklärung.
k23/k23.4/k23.4.2/k23.4.2.2/start.txt · Zuletzt geändert: 29.11.2023 (Externe Bearbeitung)

Seiten-Werkzeuge