Registriert seit: 2. Sep 2008
Ort: Kleve
822 Beiträge
Delphi 2010 Professional
|
VST ausdrucken
30. Mär 2011, 12:28
Hi,
ich möchte gern ein komplettes VST ausdrucken.
Habe es bislang mit der Methode von Shima probiert.
Delphi-Quellcode:
procedure PaintControlToCanvas(control:TControl; Canvas:TCanvas; x,y:Integer);
var
dest, src : TRect;
begin
Assert(Assigned(control));
Assert(Assigned(canvas));
if control is TWinControl then
TWinControl(control).PaintTo(Canvas.Handle, x, y)
else if control is TGraphicControl then
begin
src := control.ClientRect;
dest := src;
OffsetRect(dest, x, y);
Canvas.CopyRect(dest, TGraphicControlCracker(control).Canvas, src);
end
else
Assert(False, 'PaintControlToCanvas: Control-Class not supported');
end;
Aufruf:
Delphi-Quellcode:
printer.Orientation := poLandscape;
Printer.BeginDoc;
SetMapMode(Printer.Canvas.Handle, MM_ISOTROPIC);
SetWindowExtEx(Printer.Canvas.Handle, 1, 1, nil);
SetViewportExtEx(Printer.Canvas.Handle, 5, 5, nil); //Zoomfaktor
//PaintControlToCanvas(MHauptmaske.Auftrag, Printer.Canvas, 50, 50);
// if checkbox1.Checked = true then
PaintControlToCanvas(VstKundenListe, Printer.Canvas, 50, 70+VstKundenListe.Height);
// PaintControlToCanvas(VstKundenListe, Printer.Canvas, 100, 80);
Printer.EndDoc;
Er druckt nun zwar, allerdings nur das sichtbare VST, das heißt er druckt nicht den kompletten Inhalt aus :/
Steven
|
|
Zitat
|