![]() |
Drucken auf Adobe Acrobat X
Hallo,
ich habe schon die suchfunktion genutzt, aber leider nix gefunden was auf mein Problem zutrifft. Ich schreibe grade eine kleine Soft die auch tabellen usw. drucken soll. Da ich nicht immer ein Blatt Papier verschwenden möchte, dachte ich, ich könnte auf den Adobe PDF Drucker drucken und mir das am Bildschirm ansehen. Leider kommt da nix raus. Auf allen anderen Druckern (Tinte,Laser) klappt das drucken. Es geht nicht darum ein PDF-File zu erzeugen!! Installiert ist Adobe Acrobat X. Was muss ich machen, damit er nach .EndDoc "druckt"? Vielen dank im voraus |
AW: Drucken auf Adobe Acrobat X
Zeig mal wie Du es versuchst.
|
AW: Drucken auf Adobe Acrobat X
Den Code habe ich runtergeladen um erstmal zu verstehen wie das drucken überhaupt geht. Das ist doch ein bissl anders als früher bei DOS und einem 7 Nadeldrucker :-D
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var zeile, x, y: integer; breite, hoehe, randlinks, randoben: integer; sl :TStringList; begin sl:=TStringlist.Create; sl.add('sdjskd skdj'); sl.add('sdjskd skdj'); sl.add('sdjskd skdj'); sl.add('sdjskd skdj'); sl.add('sdjskd skdj'); sl.add('sdjskd skdj'); sl.add('sdjskd skdj'); sl.add('sdjskd skdj'); sl.add('sdjskd skdj'); if PrintDialog1.Execute then begin Printer.BeginDoc; //Druckjob beginnen SetMapMode(Printer.Canvas.Handle, MM_LOMETRIC); //Umstellen auf 1/10 mm //Schrift-Einstellungen: Printer.Canvas.Font.Name:='Courier New'; Printer.Canvas.Brush.Color:=clWhite; Printer.Canvas.Font.Height:=50; //5 mm //Blattgöße in 1/10 mm ermitteln: breite:=GetDeviceCaps(Printer.Canvas.Handle, HORZSIZE)*10; hoehe:=GetDeviceCaps(Printer.Canvas.Handle, VERTSIZE)*10; // randlinks:=250; //2,5 cm // randoben:=250; //2,5 cm randlinks:=0; //2,5 cm randoben:=0; //2,5 cm x:=randlinks; y:=randoben*-1; for zeile:=0 to sl.Count-1 do begin if -y>(hoehe-2*randoben) then begin y:=randoben*-1; Printer.NewPage; end; if y=-randoben then begin Printer.Canvas.Font.Style:=[fsbold]; Printer.Canvas.TextOut(x, y, 'Seite '+IntToStr(Printer.PageNumber)); Printer.Canvas.Font.Style:=[]; y:=y-Printer.Canvas.TextHeight(sl[zeile]); end; Printer.Canvas.TextOut(x, y, sl[zeile]); y:=y-Printer.Canvas.TextHeight(sl[zeile]); end; Printer.EndDoc; end; sl.Free; end; |
AW: Drucken auf Adobe Acrobat X
Mit FreePDF klappt es komigerweise. Der ist für Privat kostenfrei.
![]() Trotzdem würde ich gerne wissen warum das beim Adobe Acrobat nicht geht. |
AW: Drucken auf Adobe Acrobat X
Zunächst die dümmste Frage: Du bist Dir sicher, daß Du nicht nur den Reader installiert hast?
Und dann, ist der PDF-Drucker auch richtig eingerichtet? Gruß K-H |
AW: Drucken auf Adobe Acrobat X
Zitat:
Gruß |
AW: Drucken auf Adobe Acrobat X
"Fehler" gefunden. Man muss Printer.Title setzen, sonst geht die Dialogbox zum speichern garnicht auf.
Nun geht es. Trotzdem danke und Gruß |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz