Einzelnen Beitrag anzeigen

Benutzerbild von FAlter
FAlter

Registriert seit: 21. Jul 2004
Ort: Ostfildern
1.096 Beiträge
 
FreePascal / Lazarus
 
#5

Re: Paintboxcanvas als wmf speichern

  Alt 28. Dez 2005, 15:32
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.
Felix Alter
  Mit Zitat antworten Zitat