Thema: Delphi Image - Bitmap - Canvas

Einzelnen Beitrag anzeigen

geosucher

Registriert seit: 28. Aug 2006
36 Beiträge
 
#1

Image - Bitmap - Canvas

  Alt 2. Aug 2014, 20:58
Hallo,

wieder mal ein Problem. Ich nutze Delphi XE5 für eine Android-App. Ich möchte in einem Image etwas zeichnen.
Ich lege eine TImage-Komponente auf das Formular (Größe: 500 (breit) x 400 (hoch)).

Wenn ich nun zeichne:

with Image1.Bitmap do
begin
Canvas.Stroke.Color := claRed;
Canvas.Stroke.Kind := TBrushKind.bkSolid;
Canvas.StrokeThickness:= 20;
Canvas.BeginScene;
Canvas.DrawLine(pt0,pt1,100);
Canvas.Stroke.Color := claBlue;
Canvas.DrawLine(pt2,pt3,100);
Canvas.EndScene;
end;

kann ich die Punkte so setzen, dass die Linien am Rand beginnen. Durch Testen komme ich bei roten horizontalen Linie auf
x-Wert von 1 bis 332 und bei der blauen vertikalen Linie auf y-Werte von 1 bis 266.
Die Differenz zu Höhe und Breite kann ich mir nicht erklären. Ich habe folgende Eigenschaften der Image-Komponente gesetzt:
Align - alNone
MultiResBitmap - Größe nach Bild / Skalierung 1.0
Scale - X 1 / Y 1
WrapMode - iWOriginal
Sicher versteckt sich irgendwo noch eine Skalierung oder ein Faktor, den ich übersehe. Vielleicht hat jemand eine Idee?

Gruß

Geosucher

Ach so im FormCreate setze ich:

Image1.Bitmap.SetSize(Round(Image1.Width),Round(Im age1.Height));
Image1.Bitmap.Clear(TAlphaColors.White);

Geändert von geosucher ( 2. Aug 2014 um 21:13 Uhr)
  Mit Zitat antworten Zitat