![]() |
[gelöst] Wie die Größe eines TMetafileCanvas festlegen ?
Moin, moin,
wie kann ich die Größe eines TMetafileCanvas festlegen ? Egal wie ich es anstelle, es kommt immer meine Desktopgröße raus. so will es nicht:
Delphi-Quellcode:
so auch nicht:
WMF := TMetaFile.Create;
WMF.mmWidth := 2000; WMF.mmHeigth := 2000; Zeichnung := TMetaFileCanvas.Create(WMF, 0);
Delphi-Quellcode:
und auch das nicht:
WMF := TMetaFile.Create;
WMF.mmWidth := 2000; WMF.mmHeigth := 2000; Zeichnung := TMetaFileCanvas.Create(WMF, WMF.Handle);
Delphi-Quellcode:
so langsam bin ich am Verzweifeln.
drw := TPicture.Create;
drw.Metafile.MMHeight := 2000; drw.Metafile.MMWidth := 2000; WMF:= TMetaFile.Create; Zeichnung := TMetaFileCanvas.Create(WMF, drw.Metafile.Handle); Die Hilfe und die Forensuche haben mich nicht wirklich weiter gebracht. |
Re: Wie die Größe eines TMetafileCanvas festlegen ?
Hallo Michael,
deine beiden letzten Versuche sehen aus wie Verzweiflungstaten und dein erster Versuch ist es wert analysiert zu werden: Du erzeugst ein Metafile-Objekt und dimensionierst es 2000 * 2000. Anschließend erzeugst du ein passendes TMetaFileCanvas-Objekt, wobei du mit dem device context handle 0 signalisierst, dass du den context des desktop windows verwenden möchtest. Der Konstruktor dimensioniert dabei dein Metafile entsprechend neu. Probiere dochmal deine Dimensionierung zum richtigen Zeitpunkt vorzunehmen. Keine Garantie auf Erfolg. Grüße vom marabu |
Re: Wie die Größe eines TMetafileCanvas festlegen ?
Hallo marabu,
Zitat:
Zitat:
Ich habe mit etlichen versch. Handles versucht eine passende Größe und entsprechenden ClipRect zu übergeben, aber immer mit dem Erfolg des ersten Versuchs. |
Re: Wie die Größe eines TMetafileCanvas festlegen ?
IMHo meint marabu, dass du das schreiben sollst:
Delphi-Quellcode:
WMF := TMetaFile.Create;
Zeichnung := TMetaFileCanvas.Create(WMF, 0); WMF.mmWidth := 2000; WMF.mmHeigth := 2000; |
[gelöst] Wie die Größe eines TMetafileCanvas festlegen ?
so gehts:
Delphi-Quellcode:
sind des Rätsels Lösung.
WMF := TPicture.Create; <=== Das
WMF.Metafile.Width := 2000; WMF.Metafile.Height := 2000; Zeichnung := TMetaFileCanvas.Create(WMF.Metafile, 0); <=== und dann das Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:10 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz