Eine Software rendert mit Hilfe der Windows-internen HTML-Engine HTML-Dateien zum Drucken. In den Dokumenten sind Zwischenüberschriften negativ dargestellt. Realisiert wird das mit Tabellen, die weisse Schrift auf schwarzem Hintergrund enthalten. Trotz der (im Web recherchierten) Einstellung Internetoptionen/Erweitert/Drucken/Hintergrundfarben und -bilder drucken JA, schert sich IE "einen Sch..." um diese Einstellung. Auch in der Druckvorschau des IE8 bleiben die Flächen weiss. Gibt es einen Registry-Eintrag, um das Probem zu lösen bzw. könnte es sein, dass es für die interne Rendering-Engie andere Einstellungen gibt? (Win 2003, SP2, IE 8)? Danke. Frank P.S. braucht es evtl. einen Neustart? Kann ich nur nicht leichtfertig machen, ist ein gut ausgelasteter Server.
Frank Esselbach schrieb: > P.S. braucht es evtl. einen Neustart? Kann ich nur nicht leichtfertig > machen, ist ein gut ausgelasteter Server. Vom IE sicherlich, System eher unwahrscheinlich, aber ich würde das erstmal mit einer lokalen Installation testen. Frank Esselbach schrieb: > Realisiert wird das mit Tabellen, die weiße > Schrift auf schwarzem Hintergrund enthalten Die von dir angesprochene Einstellung bezieht sich aber auf den Hintergrund des HTML-Dokumentes und kümmert sich tatsächlich einen sch*** um Tabellenhintergründe... ;) Wie würde den der Hintergrund realisiert? Gibt es ggf. eine druck.css welche den Bildschirmdarstellungen widerspricht.
Nein css gibt es nicht, macht den Datengenerator zu aufwändig. Der Hintergrund wurde mit bgcolor realisiert, was in der Ansicht klappt, nur beim Drucken bisher nicht.
1 | <table border='0' cellspacing='0' cellpadding='0'> |
2 | <tr> |
3 | <td bgcolor='#000000' font color='#ffffff'> TEST </td> |
4 | </tr> |
5 | </table> |
Inzwischen habe ich festgestellt, dass wenn man in der Druckvorschau eines manuell aufgerufenen Dokumentes die Einstellung für Hintergrund drucken nochmals manuell vornimmt, er sich das dann merkt. Aber das hat doch Nichts mit prof. Programmierung zu tun, oder? Aber ich bin noch auf ganz andere Sachen gestossen. IE ist einfach nur ein großer Haufen Mist. Das nächste Problem ist, dass IE nicht auf den aktuellen Standarddrucker druckt, sondern auf den zuletzt benutzten, falls man diesen wechselt ... heilige Sch... Ich brauche das, um Ausdrucke ohne Benutzereingriff (!) auf verschiedene Drucker zu verteilen ... FRank P.S. zwischen Seiten- und Tabellenhintergrund macht der IE anscheinend keinen Unterschied. Entweder sie werden beide gedruckt oder nicht. Die Vorschau verhält sich genauso.
Hm... na wenn der IE Frank Esselbach schrieb: > einfach nur > ein großer Haufen Mist ist, wieso benutzt du ihn dann? Wie auch immer, ich würde es mal alternativ mit css probieren, dies hier: Frank Esselbach schrieb: > Nein css gibt es nicht, macht den Datengenerator zu aufwändig versteh ich in dem Zusammenhang irgendwie nicht, eigentlich sollte das die Angelegenheit sehr viel einfacher machen wenn man einmal zu beginn des Dokumentes die Styles definiert, oder von mir aus auch inline ist:
1 | <td style="background-color: #000000;" font color="#ffffff">TEST </td> |
Nun wirklich nicht signifikant aufwändiger als
1 | <td bgcolor='#000000' font color='#ffffff'> TEST </td> |
Je nach benötigtem HTML-Standard könnte man das problem evenuell einfacher über ein Java Programm und den eingebauten HTML-Renderer lösen, da hast du dann alle Freiheiten bezüglich Druckern, und eine Option zum ausblenden von Hintergrundfarben gibt es da nicht...
Ich benutze den IE nicht, weil ich ihn liebe, sondern dessen Rendering-Engine steckt hinter dem HTML-Control, dass ich in meiner Anwendung benutze. Die Macken mit der Akzeptanz der Voreinstellungen sind übrigens immer die gleichen, egal, ob man die Effekte per Alt-HTML oder CSS erzeugt. Für das sparsame Drucken finde ich ja prinzipiell die Möglichkeit auf den Verzicht von Hintergrundbildern und -farben nicht verkehrt. Was mich so aufbringt, ist, dass es nicht (sofort) funktioniert, wenn man es abschaltet. Frank
Frank Esselbach schrieb: > Ich benutze den IE nicht, weil ich ihn liebe, sondern dessen > Rendering-Engine steckt hinter dem HTML-Control, dass ich in meiner > Anwendung benutze. Die Macken mit der Akzeptanz der Voreinstellungen > sind übrigens immer die gleichen, egal, ob man die Effekte per Alt-HTML > oder CSS erzeugt. > Für das sparsame Drucken finde ich ja prinzipiell die Möglichkeit auf > den Verzicht von Hintergrundbildern und -farben nicht verkehrt. Was mich > so aufbringt, ist, dass es nicht (sofort) funktioniert, wenn man es > abschaltet. > Frank Letztlich verstehe ich das Problem nicht so ganz... Wenn das Layout wirklich komplex ist, kann man Postscript/PDF ausgeben und das dann entsprechend Rendern und Drucken lassen. Bei weniger komplexen Layouts ist es auch problemlos über GDI/GDI+ lösbar. Warum der Umweg über HTML und den IE?
Im Rahmen des Software-Projektes sollen Informationen bei Bedarf angezeigt werden, aber auch archiviert und eben gedruckt. Das Layout ist nicht sonderlich komplex, aber eben auch etwas mehr als einfacher Text. Eine Rendering-Engine für HTML ist bei jedem Betriebssystem bereits onboard, HTML ist relativ simpel zu erzeugen. PDF dagegen ist schon deutlich schwieriger zu erzeugen und erst recht beim Rendern ziemlich anspruchsvoll und nicht ohne zusätzliche Libraries zu machen. Ich weiß, wovon ich rede, ich habe erst kürzlich ein Projekt gemacht, da wurde die QuickPDF-DLL als Renderer eingesetzt. Der Speicherplatzbedarf und die erforderliche Rechenleistung, um ein A4-Dokument zu rendern, bringt einen Mini-PC bzw. ThinClient scon ganz schön ins Schwitzen. Man muss Text z.B. mit deutlich mehr als 72 dpi rendern (200 dpi) und erst anschliessend herunterskalieren, sonst ist er kaum lesbar. Nein, deshalb will ich das HTML-Konzept auch garnicht grundsätzlich infrage stellen, nur die Details sind eben hin und wieder etwas frustrierend. Frank
Mit folgendem Ausgangs-HTML
1 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml2/DTD/xhtml1-strict.dtd">
|
2 | <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> |
3 | <head> </head> |
4 | <body>
|
5 | <table border='0' cellspacing='0' cellpadding='0'> |
6 | <tr>
|
7 | <td style="background-color: #000000;"><font color="#ffffff"> TEST </font></td></tr> |
8 | </table>
|
9 | </body>
|
10 | </html>
|
und mit HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\PageSetup Print_Background = yes funktioniert es hier (allerdings IE9-Beta und Druck in Datei, dafür auch in der Vorschau...). http://support.microsoft.com/kb/236777/en-us http://support.microsoft.com/default.aspx?scid=kb;en-us;330628
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.