Dove posso trovare documentazione e / o esempi di utilizzo di TMetafile e TMetafileCanvas?
Domanda
Mentre lavoro per aggiungere una stampa personalizzata alla mia applicazione, ho deciso di usare TMetafile per creare le pagine, quindi di usarlo per visualizzare in anteprima & amp; / o stampare, ma trovo che la documentazione manchi.
Esistono buone risorse per apprendere i dettagli del lavorare con TMetafile e TMetafileCanvas?
Soluzione
I dettagli del lavorare con TMetaFile / Canvas sono più correlati ai meta file che alle implementazioni di TMetaFile e TMetaFileCanvas dalla mia traumatica esperienza di lavoro con esso. Ah, dovresti piuttosto cercare informazioni su come funziona EMF (o WMF). L'implementazione di Delphi chiama semplicemente Windows a fare tutto come lo capisco.
Potresti voler essere più specifico di ciò che devi sapere, anche se oltre a una guida su come farlo.
Altri suggerimenti
In realtà è più semplice di quanto pensi ...
ecco un po 'del mio codice:
var
m: TMetafile;
mc: TMetafileCanvas;
begin
m := TMetafile.Create;
m.Width := 1000;
m.Height := 1000;
mc := TMetafileCanvas.Create(m, 0);
//use mc just like any canvas...
mc.Free;
// you can use m for anything you want, preview, print, save ...etc.
end;
Per copiare il metafile negli Appunti:
Clipboard.Assign(m);
Per salvare in un file emf:
m.SaveToFile(filename);
L'ho usato per stampare un metafile in un report veloce.
Non ci ho pensato molto, ma so che il codice QuickReports utilizza metafile sotto il cofano per creare l'anteprima di stampa e per inviarlo alla stampante. Se hai la fonte per questo, potrebbe essere utile.