Delphi-PRAXiS
Seite 2 von 5     12 34     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Drucken mit gleichzeitigem generieren eines PDFs (https://www.delphipraxis.net/203511-drucken-mit-gleichzeitigem-generieren-eines-pdfs.html)

hstreicher 26. Feb 2020 11:54

AW: Drucken mit gleichzeitigem generieren eines PDFs
 
Diverse PDF Drucker bieten die Option das PDF nach Erstellung auch noch als Hardcopy zu Papier zu bringen
auf die schnelle habe ich das bei pdfcreator und win2pdf gefunden.

Eine ähnliche Funktion habe ich auch bei Dokumenten Management Software gesehen die alles was ausgedruckt wird auch gleich als PDF ins Archiv schiebt.

Oder man dreht die Sache um und druckt einfach zuerst ein PDF und läßt dieses PDF dann auf Papier ausdrucken
ein kleines Programm das das PDF Ausgabeverzeichniss überwacht und die neuen Dateien ausdruckt sollte nicht so schwer sein

mfg Hannes

oakley 26. Feb 2020 14:37

AW: Drucken mit gleichzeitigem generieren eines PDFs
 
Hallo zusammen,

danke für das Feedback. Die Idee zunächst ein PDF zu erzeugen und anschließend noch zu drucken wäre natürlich auch gut.
Die Word Datei ist ein gutes Beispiel denn ich muss das ganze über die Druckfunktion realisieren, sprich ein virtueller Drucker muss schon vorhanden sein.

LG

Mirko

himitsu 26. Feb 2020 15:24

AW: Drucken mit gleichzeitigem generieren eines PDFs
 
Man kann auch ein installiertes Office über die OLE ansprechen, dort das Word-Dokument laden und es dann Drucken und/oder als PDF exportieren.

UliTs 23. Mai 2020 09:41

AW: Drucken mit gleichzeitigem generieren eines PDFs
 
Zitat:

Zitat von KodeZwerg (Beitrag 1458344)
Ich habe die Frage bestimmt nicht korrekt verstanden, hier ein schnippsel wie man den Microsoft Print to PDF direkt anspricht und ein PDF erzeugt.

Delphi-Quellcode:
var
  DeviceMode: THandle;
  Device, Driver, Port: array[0..80] of Char;
begin
  Printer.PrinterIndex := Printer.Printers.IndexOf('Microsoft Print to PDF'); // drucker
  Printer.GetPrinter(Device, Driver, Port, DeviceMode);
  Printer.SetPrinter(Device, Driver, 'Test.pdf', 0); // dateiname
  Printer.BeginDoc;
  Printer.Canvas.TextOut(100, 100, 'Test'); // pdf inhalt
  Printer.EndDoc;
end;

Vielen Dank für diesen Code! Wenn ich es richtig verstanden habe, ist bei Windows10 der "Microsoft Print to PDF" Treiber grundsätzlich vorhanden.
Wenn man statt des Dateinamens einen Leerstring ( '' ) angibt, fragt Windows nach "begindoc" verständlicherweise nach selbigem.
Gibt es eine Möglichkeit, einen Dateinamen als Voreinstellung anzugeben, der im Dialog nach "begindoc" automatisch vorgeschlagen wird?

Dumpfbacke 23. Mai 2020 12:35

AW: Drucken mit gleichzeitigem generieren eines PDFs
 
Zitat:

Zitat von HolgerX (Beitrag 1458335)
Hmm..

Redmon läuft auch auf W10 (zu mindestens hier bei uns ;) )

Hallo HolgerX,
kann du mir sagen wie es das gamcht habt ? Ich möchte von einem beliebigen Programm aus drucken. Dann soll ein Server diese Daten engegen nehmen und ein PDF Datei erzeugen und in ein Verzeichnis ablegen. Geht so etwas mit Redmin und hast due Quellen für mich ?

Danke Tanja

HolgerX 24. Mai 2020 05:47

AW: Drucken mit gleichzeitigem generieren eines PDFs
 
Hmm..

Installiere doch auf dem Server z.B. PDFCreator und share diesen Drucker dann.
Vom CLient aus kannst Du dann auf diesen Netzwerkdrucker zugreifen und darüber mit jeder Applikation drucken.

PDFCreator kann so konfiguriert werden, dass die PDFs direkt in einem Verzeichnis abgelegt werden.
Der Dateiname kann auch in Creator definiert werden.

Früher hat PDFCreator intern auch den RedMon verwendet, ob dies immer noch der Fall ist, weiß ich nicht.

Wenn Du dies selber machen möchtest, um mehr Einfluss zu haben, dann geht das mit RedMon.

http://www.ghostgum.com.au/software/redmon.htm

Hiermit wird ein 'Anschluss' installiert. Dieser erscheint dann bei der Druckerinstallation in der dortigen Auswahl.

Wenn Du damit was machen willst, ergibt sich somit folgende Reihenfolge:

- Installieren Redmon auf dem Server
- Installieren Druckertreiber (PostScript!!) wie z.B. Microsoft (Generic) 'MS Publisher Color Printer'. Dort als Anschluss(Port) den RedMon angeben.
- Freigeben des Druckers im Netzwerk.
- Verwenden des Druckers als Netzwerkdrucker von einem beliebigen Client.

Nun brauchst Du nur ein Programm/Script, welches die Druckerdaten vom Redmon entgegen nimmt und z.B. mit GhostScript in ein PDF konvertiert.
Dieses wird dann als Ziel in der Konfiguration von RedMon angegeben.

Somit musst Du dich der Datenweiterreichung von RedMon auseinander setzen und mit der Bearbeitung von z.B. Ghostscript.

Druckertreiber Tools wie PDFCreator, oder früher FreePDFXP (nicht mehr verfügbar), machen eben dieses nach diesem Muster.

Edit:
Hier habe ich das alte FreePDF noch zum Download gefunden:
https://www.heise.de/download/product/freepdf-18061

Rollo62 25. Mai 2020 06:49

AW: Drucken mit gleichzeitigem generieren eines PDFs
 
Zitat:

Zitat von UliTs (Beitrag 1465089)
Gibt es eine Möglichkeit, einen Dateinamen als Voreinstellung anzugeben, der im Dialog nach "begindoc" automatisch vorgeschlagen wird?

Bräuchte man dafür nicht einfach nur einen eigenen Dialog davorzuschalten ?

JanWe 25. Mai 2020 17:29

AW: Drucken mit gleichzeitigem generieren eines PDFs
 
Zitat:

Zitat von HolgerX (Beitrag 1465113)
Hmm..

Installiere doch auf dem Server z.B. PDFCreator und share diesen Drucker dann.

evtl. Vorsicht mit dem PDFcreator - und gerade auf Servern (noch sensibler).

jedenfalls das Setup-Programm für Windows bringt beim installer (oder brachte früher) eine Tool-Bar (für sämtliche Browser) oder ähnliche Adware mit.
Oder zumindest diesen "PDF-Architect". (wohl auch lästige Zwangsbeglückung)

Hab den nicht installiert, da FreePDF (wie Du auch erwähnt hast) seine Dienste ohne jeden Beigeschmack hervorragend tut.
Ist zwar ein VisualBasic Programm, aber ich wüßte kein besseres für Windows, daß ich mit gutem Gewissen empfehlen könnte.

HolgerX 26. Mai 2020 08:17

AW: Drucken mit gleichzeitigem generieren eines PDFs
 
Hmm..

Zitat:

Zitat von JanWe (Beitrag 1465255)
Zitat:

Zitat von HolgerX (Beitrag 1465113)
Hmm..

Installiere doch auf dem Server z.B. PDFCreator und share diesen Drucker dann.

evtl. Vorsicht mit dem PDFcreator - und gerade auf Servern (noch sensibler).

jedenfalls das Setup-Programm für Windows bringt beim installer (oder brachte früher) eine Tool-Bar (für sämtliche Browser) oder ähnliche Adware mit.
Oder zumindest diesen "PDF-Architect". (wohl auch lästige Zwangsbeglückung)

Hab den nicht installiert, da FreePDF (wie Du auch erwähnt hast) seine Dienste ohne jeden Beigeschmack hervorragend tut.
Ist zwar ein VisualBasic Programm, aber ich wüßte kein besseres für Windows, daß ich mit gutem Gewissen empfehlen könnte.

Das mit PDFCreator war nur ein Beispiel, ich benutze Ihn nicht selber und hatte ihn nur bei Kunden in Verwendung gesehen.
FreePDFXP wurde leider in 2017 eingestellt und die WebSite ist inzwischen von einem anderen Tool in Beschlagnahme. Auch war es dort nicht möglich (im FreePFD) ein direktes speichern ohne Dialog einzustellen. Ich hatte es nur als Beispiel angegeben, wie mit RedMon in Kombination mit GhostScript (wurde beides von FreePDF verwendet) dies umgesetzt werden kann.

Für die automatische Erzeugung von PDFs per Drucker verwende ich ein selbst geschriebenes Tool (ähnlich wie FreePDF nur ohne Dialog ;) ) in Verbindung mit RedMon. Dieses liest sich den 'Titel' aus den PhostScriptdaten (von 'MS Publisher Color Printer' erstellt und per Redmon ans Tool geschickt) aus und verwendet diesen für den Dateinamen.

Somit sollte deine Anwendung nur den zukünftigen Dateinamen als 'Title' mit angeben.
Dies kann mit Printers, aber auch den meisten Report-Komponeten gemacht werden.

Auf der ehemaligen WebSite für FreePDFXP war auch ein Beispiel angegeben, wie ohne den Dialog mir RedMon und GhostScript PDF-Dateien direkt abgelegt werden. Hier müsste man mal schauen, ob diese Seite noch in einem WebArchiv vorhanden ist.

oakley 26. Mai 2020 08:52

AW: Drucken mit gleichzeitigem generieren eines PDFs
 
Verstehe ich das richtig, dass Redmon einen Drucker an einem eigenen Port bereit stellt und ich dann bestimmen kann welcher Ausdruck wohin geht?
Ich stelle im Redmon ein, das er ein PDF über Microsoft Print to PDF erzeugen und anschließend über meinen Canon IR3035 drucken soll.
Was sende ich an Redmon einen Druckauftrag oder eine PostScript Datei?

LG

Mirko


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:04 Uhr.
Seite 2 von 5     12 34     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz