Jeder Farbbildschirm und jede bessere Farbkarte wirbt für sich, dass sie 16,8 Mio. Farben darstellen könne. Der Bildschirm setzt eine Farbe aus den drei Komponenten Rot, Grün und Blau (rgb) zusammen. Jede dieser Farbkomponenten kann mit einem Anteil von 0 .. 255 (also einem Byte) angesteuert werden. D.h. es gibt also 256*256*256 verschiedene Kombinationen dieser Anteile, sprich knapp 16,8 Mio. verschiedene Farben. Will man Farbinformationen in dieser Auflösung speichern, benötigt man pro Pixel des Bildes 3 Byte Farbinformationen. Man versteht jetzt vielleicht, warum Farbbilder als Datei selbst bei kleinen Bildern sehr groß werden können. Da kaum jemand all diese Farbwerte optisch unterscheiden kann, können Farbinformationen auch in kleinerer Auflösung z.B. 256 Farben ( entspricht einem Byte Farbinformation) gespeichert werden. Am kleinsten werden Bild-Dateien in schwarz-weiß: Für jedes Pixels benötigt man nur 1 Bit, d.h. in einem Byte kann man die Informationen für acht Pixel speichern
Delphi behandelt jede dieser Farben als eine Zahl vom Typ longint.
Farbe | Hexadezimal | Dezimal | rgb | Delphi-Name |
rot | $ 0000ff | 0*256*256+0*256+255 | rgb(255,0,0) | clRed |
grün | $ 00ff00 | 0*256*256+255*256+0 | rgb(0,255,0) | clGreen |
blau | $ ff0000 | 255*256*256+0*256+0 | rbg(255,0,0) | clBlue |
schwarz | $ ffffff | 255*256*256+255*256+256 | rgb(255,255,255) | clWhite |
weiß | $ 000000 | 0*256*256+0*256+0 | rgb(0,0,0) | clBlack |
Im Programm-Beispiel ( farben.zip) wird gezeigt, wie man mit Farbwerten in Delphi arbeiten kann.
© Dietrich Praclik