BMPs als WMF Speichern oder beliebige WMFs erstellen geht ungefähr so:
Delphi-Quellcode:
Meta := TMetaFile.Create;
try
Meta.Width := BMP.Width;
Meta.Height := BMP.Height;
with TMetaFileCanvas.Create(Meta, 0) do
try
//MoveTo, LineTo, Rectangle, zum Zeichnen ... oder
Draw(0, 0, BMP); //<-- Warnung: erzeugt extrem große Dateien, da die BMP
//unkomprimiert in die WMF eingebettet wird - jedes Pixel einzeln
finally
Free;
end;
Meta.SaveToFile(FileName);
finally
Meta.Free;
end;
Analog auch EMFs, in Delphis TMetaFile.SaveToFile wird die Erweiterung des übergebenen Dateinamens (.WMF oder .EMF) überprüft und das passende Format geschrieben.