![]() |
HP Duplex einbinden (Drucken)
Hallo...
möchte eine HP Duplexeinheit einbinden in meine Druckroutine! Das Problem ist, das ich durch das 2 malige Begindoc und Enddoc 2 Druckaufträge erhalte! Müsste meine 2 zu druckenden Seiten in einen Druckauftrag schicken können! Hatte jemand auch schonmal das Problem oder wollte es Probieren? Gibt es eine Lösung? Gruß Mitchl :coder: |
Hallo,
solange es noch nichts mit Datenbanken zutun hat, verschiebe ich es mal nach Sonstiges. Grüsse, Daniel :hi: |
Ups... ist mir irgendwie falsch dazwischen gerutscht!
Mitchl |
Ich versteh dein Problem nicht ganz. Wieso kannst du die zwei Seiten nicht in einem Druckauftrag verschicken?
Zwei Seiten hintereinander in einem Druckauftrag mit Drucker auf Duplex gestellt = Duplexdruck :) MfG Hitzi |
Wenn ich schreibe
begindoc Text 1 enddoc --- begindoc Text 2 enddoc dann druckt er mir Seite 1 mit Text 1, Seite 2 leer, Seite 3 mit Text 2, und Seite 4 leer... das Verstehe ich nicht! Gruß Mitchl |
Warum machst du das nicht so?
BeginDoc "Text1" NewPage "Text2" EndDoc Mit deiner Variante erstellst du zwei verschiedene Druckaufträge. Duplex wird immer nur auf einen Druckauftrag angewendet. Jeder folgende Druckauftrag "initializiert" den Drucker auf die jeweils eigenen Einstellungen (auch Duplex). Deshalb wird jeder einzelne Druckauftrag so betrachtet, als ob dieser der einzige Druckauftrag ist. Druckaufträge können meines Wissens nicht durch den Drucker verknüpft werden. Um nun Duplex in einem Druckauftrag verwenden zu können musst du bei den Druckereinstellungen Duplex aktiviert haben. Um nun Text 2 auf die Rückseit von Text 1 zu bekommen, musst du einen Seitenumbruch hinzufügen. Dies erfolgt durch den Befehl "Newpage". Das war auch schon alles zum Thema Duplexdruck. Das einzige "Geheimnis" ist der Seitenumbruch :) MFG Hitzi |
Ich danke Dir vielmals! Werde Deine Lösung sofort ausprobieren!
Gruß und Danke Mitchl |
Re: HP Duplex einbinden (Drucken)
hi,
danke erstmal, dieser beitrag hat mir schonmal etwas weitergeholfen. nun, ich schreibe zurzeit ein programm, das mir mails mit einem klick druckt. dabei will ich nicht immer im druckertreiber auf duplex umstellen, meine frage also: kann ich über einen befehl dem druckertreiber sagen, das beim nächsten druckauftrag er bitte duplex drucken soll und dann wieder die standard-druckereinstellungen? wie kann ich also die einstellungen manipulieren, die ich sonst über den druckerdialog ändern kann? danke mfg |
Re: HP Duplex einbinden (Drucken)
Hallo,
hab mich da noch nicht so richtig mit beschäftigt, aber vielleicht hilft Dir dern Quelltext weiter?
Delphi-Quellcode:
Gruß
uses
printers, winspool; function PrinterSupportsDuplex: Boolean; var Device, Driver, Port: array[0..255] of Char; hDevMode: THandle; begin Printer.GetPrinter(Device, Driver, Port, hDevmode); Result := WinSpool.DeviceCapabilities(Device, Port, DC_DUPLEX, nil, nil) <> 0; end; var Device, Driver, Port: array[0..80] of Char; DevMode: THandle; pDevmode: PDeviceMode; begin // Get printer device mode handle. Printer.GetPrinter(Device, Driver, Port, DevMode); if Devmode <> 0 then begin // lock it to get pointer to DEVMODE record pDevMode := GlobalLock(Devmode); if pDevmode <> nil then try with pDevmode^ do begin dmDuplex := DMDUP_VERTICAL; dmFields := dmFields or DM_DUPLEX; end; finally // unlock devmode handle. GlobalUnlock(Devmode); end; end; { If } end; Mitchl |
Re: HP Duplex einbinden (Drucken)
hi, danke erstmal, habs noch nicht probiert, ist jetz auch zu spät dafür :D
aber hättest du da noch ein paar tipps, wo ich mich über die weiteren treibereinstellungen informieren kann und wie man sie dann verändern kann? zb, druckqualität, hochformat/querformat etc. danke mfg |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:44 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