Hallo,
ich bin gerade dabei sowas ähnliches wie Word zu bauen... allerdings objektorientiert (
), das heisst ich habe eine Arbeitsfläche und darauf hab ich Controls. Diese will ich natürlich drucken, und habe dazu ein TJvPreviewRenderControl, ein TJvPreviewControl und einen TJvPreviewPrinter verbandelt:
Delphi-Quellcode:
procedure TMainform.ToolButton2Click(Sender: TObject);
begin
JvPreviewRenderControl1.CreatePreview(false);
with TPrintDialog.Create(nil) do
try
if Execute then
begin
JvPreviewPrinter1.Printer := Printer;
JvPreviewPrinter1.Print;
end;
finally
Free;
end;
end;
Das Problem ist nur, das Ergebnis ist auf meinem PDF-Drucker genau um die Hälfte verkleinert, nimmt also nur das obere linke viertel des Blattes ein. Dachte ich mir, bist ja nicht blöd, schaust dir mal die Demo an. Dort funktioniert auch alles wunderbar - ich kan aber nirgends irgendetwas entdecken, das dem Drucker sagt, er solle auf die ganze Seite stretchen. Im Preview-Control ist es auch komplett drin.
Was mache ich also falsch? Mehr relevanten Code zum zeigen hab ich eigentlich nicht... Kann mir jemand eine Tipp geben?