Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi TWebbrowser ohne Seitenrand drucken (https://www.delphipraxis.net/163520-twebbrowser-ohne-seitenrand-drucken.html)

Muellermilchtrinker 2. Okt 2011 12:39

Delphi-Version: 2009

TWebbrowser ohne Seitenrand drucken
 
Hallo DP,

ich drucke mit diesem Code meinen TWebbrowser ohne Kopf- und Fußzeile. Doch nun stehe ich vor dem Problem, dass ich auch ohne Seitenrand drucken möchte. Der Ausdruck soll nämlich auf einem Labeldrucker stattfinden und dieser verschiebt das ganze und zerlegt so mein Text über 2 Etiketten.

Wäre nett, wenn mir jemand helfen könnte.

himitsu 2. Okt 2011 14:00

AW: TWebbrowser ohne Seitenrand drucken
 
Kannst du die Ränder, in den globalen Standardeinstellungen deines Druckers, anpassen?

Eventuell könnte man auch den Drucker zweimal installieren, jeweils mit unterschiedlichen Standardeinstellungen, wobei du dann den ohne Ränder nimmst.



Statt mit OLECMDID_PRINT könntest du es auch mal mit OLECMDID_PRINTPREVIEW oder mit einem vorherigen OLECMDID_PAGESETUP probieren.

Muellermilchtrinker 2. Okt 2011 14:13

AW: TWebbrowser ohne Seitenrand drucken
 
Also bei den Druckeroptionen einstellen hab ich geschaut, dass sieht negativ aus.

Aber mit OLECMDID_PAGESETUP und die Ränder auf 0 stellen, sowie die Kopf- und Fußzeile löschen, sieht das ganze doch sehr gut aus. Nun müsste ich nur noch meine HTML Datei ein wenig anpassen, dass es komplett passt. ;)

Doch ich hab da noch eine kleine Frage. Kann man den PAGESETUP Dialog nicht überspringen? Das Programm muss Nutzerfreundlich sein, und jeder (unnötige) Dialog ist da schon zu viel. :lol:

himitsu 2. Okt 2011 14:32

AW: TWebbrowser ohne Seitenrand drucken
 
OLECMDID_PRINTPREVIEW (Druckvorschau) und OLECMDID_PAGESETUP (Seite einrichten) sollen doch gerade diese Einstellungsseiten anzeigen. :angle2:

Vielleicht steht ja in OLECMDID_PAGESETUP + OLECMDEXECOPT_SHOWHELP drin, welche Parameter es dort gibt? :gruebel:

http://msdn.microsoft.com/en-us/libr.../ms691264.aspx
http://msdn.microsoft.com/en-us/libr.../ms683930.aspx

Muellermilchtrinker 2. Okt 2011 14:54

AW: TWebbrowser ohne Seitenrand drucken
 
Naja, ich meine, wenn ich OLECMDID_PRINT aufrufe, dann kann ich ja den Drucker wählen und dort, gibt's keine weitere Einstellung zu Seite einrichten o.ä. Vielleicht ist zu erwähnen, dass auf dem Zielrechner Windows 2k installiert ist.

Jetzt nochmal. Wenn ich OLECMDID_PAGESETUP aufrufe und dann dort die Sachen änder, dann speichert er das ja Systemweit, weil das IE Einstellungen sind. Richtig? Kann ich die original Einstellungen nicht beibehalten und nur für mein Druckauftrag aus dem Programm die Einstellungen ändern? Am besten wärs die Einstellungen im Quellcode zu ändern und dann den OLECMDID_PAGESETUP Dialog aufrufen, um den Drucker auszuwählen oder auf dem Standarddrucker drucken.

himitsu 2. Okt 2011 15:11

AW: TWebbrowser ohne Seitenrand drucken
 
Aso, der Dialog ... ist dir schon OLECMDEXECOPT_PROMPTUSER aufgefallen? (da gibt's auch andere Konstanten für)


Ob diese Einstellungen global oder nur Programmintern sind, weiß ich nicht ... müßte man ausprobieren.

Muellermilchtrinker 2. Okt 2011 15:19

AW: TWebbrowser ohne Seitenrand drucken
 
Zitat:

Zitat von himitsu (Beitrag 1127982)
Ob diese Einstellungen global oder nur Programmintern sind, weiß ich nicht ... müßte man ausprobieren.

So wie ich das gesehen habe, dann sind diese Einstellungen global. Denn wenn ich diese in meinem Programm änder und dann im IE auf Seite einrichten gehe, dann sehe ich dort meine geänderten Einstellungen. ;) Hätte das gerne nur Programmintern.


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:21 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-2025 by Thomas Breitkreuz