Hallo,
Du musst ein neues Metafile erzeugen, und auf dessen Canvas Dein Original-Metafile malen. Ungefähr so:
Delphi-Quellcode:
procedure MalAufMetaFile(var AMF: TMetaFile); // <- hier ist var wichtig
var
MF: TMetaFile;
begin
MF := TMetaFile.Create;
MF.Width := AMF.Width;
MF.Height := AMF.Height;
with TMetafileCanvas.Create(MF, 0) do
begin
Draw(0, 0, AMF); // Original zeichnen
// hier die weiteren Graphikoperationen
Brush.Color := c;
Pen.Color := c;
Ellipse(round((lx-w div 2)),round((ly-w div 2)),round((lx+w div 2)),round((ly+w div 2)));
//
end;
AMF.Free; // Original zerstören
AMF := MF; // Neues Metafile zurückliefern
end;
Gruß
xaromz