Ein Bild als Pixelfläche, 32 Bit je Pixel. TBitmap ist die Grundlage von TImage und TImageList und lässt sich auch direkt auf eine Zeichenfläche bringen.
Unit: Vega.Picture · Basis: keine
→ Alle Steuerelemente · Guide: Zeichnen
var bm: TBitmap := new TBitmap();
bm.SetSize(8, 4); // false, wenn zu groß
bm.Clear(RGB(200, 0, 0));
bm.SetPixel(1, 1, RGB(0, 0, 255));
Print(IntToStr(bm.Width)); // 8
Print(IntToStr(bm.Height)); // 4
Print(IntToStr(bm.Empty() as int64)); // 0
// aus einer Datei
var foto: TBitmap := new TBitmap();
if (foto.LoadFromFile("bild.png")) {
foto.DrawTo(canvas, 10, 10);
var klein: TBitmap := foto.CreateScaled(64, 64);
}
SetSize liefert false, wenn die Fläche VEGA_MAX_IMAGE_PIXELS (64 Mio. Pixel) überschreitet — eine kaputte Datei soll nicht den ganzen Speicher ziehen.MakeTransparent(farbe): das ist der Weg für BMP und GIF.CreateScaled erzeugt ein neues Bitmap, das der Aufrufer freigeben muss. Einmal beim Laden skalieren ist billiger als bei jedem Zeichnen.Data und DataSize sind nur zum Lesen gedacht — wer selbst hineinschreibt, muss die Größe aus Width und Height selbst nachrechnen.Free gibt nur die Pixelfläche frei, Destroy das ganze Objekt.
Letzte Aktualisierung: 2026-08-20 — API maschinell aus Vega/Picture.lyx erhoben, Beispiel mit lyxc 1.1.3O übersetzt.
Alle Eigenschaften, auch die geerbten.
| Name | Typ | Bedeutung | Herkunft |
|---|---|---|---|
Width | int64 | Breite | eigen |
Height | int64 | Höhe | eigen |
Data | int64 | Adresse der Bilddaten, 32 Bit je Pixel (nur lesen) | eigen |
DataSize | int64 | Größe der Bilddaten in Bytes (nur lesen) | eigen |
HasAlpha | bool | Bild führt einen Alphakanal | eigen |
Alle Methoden, auch die geerbten.
| Signatur | Zweck | Herkunft |
|---|---|---|
Create(): void | Konstruktor | eigen |
Destroy(): void | Gibt eigene Ressourcen frei | eigen |
Free(): void | Nur die Pixelfläche freigeben, das Objekt bleibt bestehen | eigen |
Empty(): bool | Kein Bild geladen | eigen |
SetSize(w: int64, h: int64): bool | Bildfläche anlegen; false, wenn VEGA_MAX_IMAGE_PIXELS überschritten wird | eigen |
Clear(c: TColor): void | Leeren — bei TBitmap die Fläche mit c füllen | eigen |
PixelAt(x: int64, y: int64): TColor | Farbe eines Pixels | eigen |
SetPixel(x: int64, y: int64, c: TColor): void | Pixel setzen | eigen |
LoadFromFile(path: pchar): bool | Bild aus einer Datei laden | eigen |
LoadFromMemory(addr: int64, len: int64): bool | Bild aus einem Speicherbereich laden | eigen |
DrawTo(canvas: TCanvas, x: int64, y: int64): void | Bild an x,y zeichnen | eigen |
StretchDrawTo(canvas: TCanvas, r: TRect): void | Bild auf das Rechteck gezerrt zeichnen | eigen |
DrawPartTo(canvas: TCanvas, x: int64, y: int64, quelle: TRect): void | Ausschnitt quelle an x,y zeichnen | eigen |
DrawPartFadedTo(canvas: TCanvas, x: int64, y: int64, quelle: TRect): void | Ausschnitt blass zeichnen — für deaktivierte Knöpfe | eigen |
MakeTransparent(c: TColor): void | Eine Farbe im Bild durchsichtig machen (für Formate ohne Alphakanal) | eigen |
Assign(src: TBitmap): bool | Inhalt aus einem anderen Bitmap übernehmen (Kopie) | eigen |
CreateScaled(w: int64, h: int64): TBitmap | Verkleinerte Fassung als neues TBitmap — einmal beim Laden statt bei jedem Zeichnen | eigen |
Keine.
Letzte Aktualisierung: 2026-08-20 — API maschinell aus Vega/Picture.lyx erhoben, Beispiel mit lyxc 1.1.3O übersetzt.