Funkcja draw w aplikacjach multidevice w Delphi 10.2

0

Witam,
Czy ktoś z was wie może jak używać funkcji do manipulacji obrazem na płótnach w aplikacjach multi-devices?
Długo szukałem ale nie udało mi się znaleźć nawet głupiego rysowania linii które by działało.

0

https://stackoverflow.com/questions/40677671/how-to-draw-a-line-in-delphi-on-an-fmx-canvas
A tak ogólnie do samej linii to w FMX istnieje coś takiego jak TLine (normalnie drag&drop z ToolPalette->Shapes)

0

Dzięki za odpowiedź. Teraz mam kolejny problem, a mianowicie z drukowaniem tekstu.
Nigdzie nie mogę znaleźć jak pozbyć się anti-aliasing z drukowanego tekstu na płótnie. Trochę to ironiczne bo dekadę temu szukało się jak ten efekt uzyskać :(
Jest mi to potrzebne gdyż generuję obrazek wielkości 50x50 px i czcionką 10 napis jest paskudnie rozmyty na tablicy RGB. Może też czcionka (Times New Roman) się do tego nie nadaje.

var
  B: TBitmap;
  f: TFont;
begin
  B := TBitmap.CreateFromFile('036.bmp');
  f := TFont.Create;
  try
    f.Family := 'Times New Roman';
    f.Size := 10;
    f.Style := [];
    B.Canvas.BeginScene;
    B.Canvas.Fill.Color := TAlphaColorRec.yellow;
    B.Canvas.Font.Assign(f);
    B.Canvas.Blending := false;
    B.Canvas.Stroke.Kind := TBrushKind.none;
    B.Canvas.Stroke.Thickness := 0;
    B.Canvas.FillText(TRectF.Create(0, 0, 50, 50), 'TEST', false, 1, [],
      TTextAlign.Leading, TTextAlign.Center);
    B.Canvas.EndScene;
    B.SaveToFile('c.bmp');
  finally
    B.Free;
    f.Free;
  end;
end;

Aktualnie wygląda to u mnie tak, próbowałem manipulować Blending, Stroke oraz kilka innymi ale widać było efektów.

1 użytkowników online, w tym zalogowanych: 0, gości: 1