Leinwandobjekt

Aus AquaSoft Wiki
Version vom 7. Dezember 2012, 09:54 Uhr von Carsten (Diskussion | Beiträge) (→‎Methoden)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springenZur Suche springen

Das Leinwandbjekt ist vom Typ ICanvas und leitet von ISlideShowObject ab. Es bietet die Möglichkeit, einfache geometrische Formen zeichnen zu lassen.

 ICanvas inherits from ISlideShowObject
   function GetWidth: Integer;
   procedure SetWidth(const Value: Integer);  
   function  GetHeight: Integer;
   procedure SetHeight(const Value: Integer); 
   procedure SetBrush(Color: Integer); 
   procedure SetPen(Color: Integer);
   procedure DrawRect(top, left, bottom, right: Integer);
   procedure DrawRectF(top, left, bottom, right: Single);
   procedure DrawEllipse(top, left, bottom, right: Integer);
   procedure DrawBitmap(Bitmap: ICanvas; DTop, DLeft, STop, SLeft, SBottom, SRight: Integer);
   procedure DrawPolygon(points: TPointFArray; fillStyle: TFillStyle);
 end;

Methoden

  • Objekt-Erzeugung

 function CreateBitmap: ICanvas;

  • Erzeugt ein Leinwandobjekt durch laden einer Bilddatei. Die Bilddateien werden im Diashow Presets Ordner gesucht.

function CreateBitmapFromFile(FileName: string): ICanvas; 

  • Breite der Leinwand in Pixeln

 function GetWidth: Integer;
procedure SetWidth(const Value: Integer);


  • Höhe der Leinwand in Pixeln

 function  GetHeight: Integer;
procedure SetHeight(const Value: Integer);


 procedure SetBrush(Color: Integer);


  • Linienfarbe setzen, 32Bit Farbtiefe

 procedure SetPen(Color: Integer);


  • Rechtecke zeichnen, Angabe der oberen, linken, unteren und rechten Begrenzung in Pixeln, Sowohl Single als auch Integer-Werte möglich

 procedure DrawRect(top, left, bottom, right: Integer);
procedure DrawRectF(top, left, bottom, right: Single);


  • Ellipse zeichnen, Angabe der oberen, linken, unteren und rechten Begrenzung (BoundingBox) in Pixeln

 procedure DrawEllipse(top, left, bottom, right: Integer);


  • Ziehe Kreis vom Mittelpunkt unter Angabe des Raduis auf

 procedure DrawCircleCenter(centerX, centerY, radius: Integer);


  • Passe maximalen Kreis in angegebene BoundingBox ein

 procedure DrawCircle(top, left, bottom, right: Integer);


  • Zeichne anderes Bild oder einen Ausschnitt dessen auf Leinwand
    • Bitmap: Anderes Leinwandobjekt
    • DTop, DLeft: Linke, obere Koordinate der aktuellen Leinwand. Linke obere Ecke des zu zeichnenden Objektes wird dort liegen
    • STop, SLeft, SBottom, SRight: Ausschnitt des zu zeichnenden Bildes

 procedure DrawBitmap(Bitmap: ICanvas; DTop, DLeft, STop, SLeft, SBottom, SRight: Integer);


  • Zeichne Polygone
    • Points: array of TPointF, Liste von Punkten
      • TPointF kann mittels TPointF.Create(X, Y) für X, Y als Single angelegt werden
    • FillStyle: OddEven oder Outer, Füllmethode

 procedure DrawPolygon(points: TPointFArray; fillStyle: TFillStyle);