unit uCanvasNaSzybko;
{
Za pomocą funkcji Canvas możemy rysowac np. po formularzu, albo komponentach. Podstawowe figurki to:
|
Figurka
|
Przykład
|
|
Elipsa
|
Canvas.Ellipse(50, 50, 200, 200);
|
|
Kwadrat
|
Canvas.Rectangle(20, 20, 100, 200);
|
|
Text
|
Canvas.TextOut(30, 30, 'text');
|
|
Łuk
|
Canvas.Arc(0, 0, 100, 100, 0, 20, 90, 180);
|
|
Linia
|
Canvas.MoveTo(0, 0); Canvas.LineTo(100, 100);
|
można także manipulowac pędzlem (pen), czyli zmieniac kolor i grubosc lini:
|
Opis
|
Przykład
|
|
Kolor lini
|
Canvas.Pen.Color := clBlue;
|
|
Grubość lini
|
Canvas.Pen.Width := 2
|
oraz wypełnieniem (brush):
|
Opis
|
Przykład
|
|
Kolor wypełnienia
|
Canvas.Brush.Color := clBlue;
|
|
Styl wypełnienia
|
Canvas.Brush.Style := bsSolid;
|
Dostępne są następujące style:
To by było tyle z podstawowych informacji. Na koniec przytocze jeszcze
mały przykład użycia, który znalazłem na twardym. Mianowicie
narysowanie textu w pionie:
procedure Tform1.Button1Click(Sender: Tobject);
var
LF : TlogFont;
Begin
Canvas.Font.Size := 24;
GetObject(Canvas.Font.Handle, SizeOf(TlogFont), @lf);
Lf.lfEscapement := 90 * 10;
lf.lfOutPrecision := OUT_TT_ONLY_PRECIS;
Canvas.Font.Handle := CreateFontIndirect(LF);
SetGraphicsMode(Canvas.Handle, GM_ADVANCED);
Canvas.Brush.Style := bsClear;
Canvas.TextOut(20, 200, 'MST KJ');
end;
|
Autor: Michał Łoński
|