mehrseitiges Drucken
Marco
- css
0 Tom0 Thomas Luethi
Hallo zusammen,
ich möchte den Text einer HTML-Seite ausdrucken. Dazu verwende ich unterschiedliche CSS-Printlayout, welches mir noch verschiedene Elemente wie z.B. meine Navigation ausblendet und wirklich nur den zu druckenden Text anzeigt.
Ist der zu druckende Text so lang, dass er über mehr als eine DIN A4 Seite gedruckt werden muss kann es sein, dass mir in der letzten Zeile vor dem Seitenumbruch die Hälfte der Zeile horizontal abgeschnitten wird. Sieht so aus, als würde der Browser die zu druckende Seite bzw. den Seitenumbruch nicht richtig berechnen.
Kennt da jemand eine Lösung für, ohne dass ich den Text nochmal z.B. serverseitig bearbeiten muß (durch manuelles hinzufügen eines Seitenumbruches)
Viele Dank schon mal
Gruß Marco
Hello,
das Problem hast Du aber nicht alleine. Ich denek, dass Drucken immer noch ein Sorgenkind in den Browsern ist.
Man kann ja leider auch immer noch keinen Kopf- und Fußbereich definieen, der beim Seitenwechwsel automatisch kommt...
Wenn man den Text in eine Tabelle packt und in einer zweiten Spalte dann immer ein (unsichtbares) GIF reinstellt, also als Rand zum Absatz sozusagen, dann versuchen die meisten Browser den gesamten Bereich so umzubrechen, dass das GIF ganz bleibt. Ist nur ein schmutziger Trick, aber meistens klappt er, es sei denn, jemand stellt seine Schrift zum Druck so groß, dass das GIF in der Höhe auch nicht ausreicht.
Liebe Grüße aus http://www.braunschweig.de
Tom
Hallo,
[...] kann es sein, dass mir in der letzten Zeile vor dem Seitenumbruch die Hälfte der Zeile horizontal abgeschnitten wird. Sieht so aus, als würde der Browser die zu druckende Seite bzw. den Seitenumbruch nicht richtig berechnen.
Drucken ist leider in vielen (auch aktuellen) Browsern etwas,
das sie nicht gut koennen.
Dass sie sogar Zeilen und Bilder horizontal abschneiden,
zeigt, wie "doof" sie in der Beziehung sind.
Theoretisch gibt es in CSS 2 gewisse Dinge, womit man
den Browsern sagen koennte:
Die Theorie:
http://www.w3.org/TR/REC-CSS2/page.html#page-breaks
http://selfhtml.teamone.de/css/eigenschaften/printlayouts.htm
Kennt da jemand eine Lösung für, ohne dass ich den Text nochmal z.B. serverseitig bearbeiten muß (durch manuelles hinzufügen eines Seitenumbruches)
Nur mit HTML und CSS gibt es keine Loesung, die aktuell
auch in der Praxis und mit der Mehrzahl der Browser befriedigt.
Speichere die HTML-Seite lokal an einem neuen Ort (damit das
Original nicht beschaedigt wird), oeffne sie in der
Textverarbeitung Deiner Wahl und fuege dort die Seitenumbrueche
ein, falls noetig.
Dann kannst Du es fuer Dich ausdrucken.
Oder in ein PDF umwandeln, falls Du anstaendige Software hast.
Mit Linux (z.B. SuSE 8.2/9.0) und/oder Open Office 1.1 hast Du
alles schon dabei, um PDFs zu machen. Sonst musst Du Dir die
notwendige Software halt besorgen.
Und nein, Du musst _nicht_ Adobe hunderte $$$ spendieren,
bloss um PDFs zu generieren...
Wenn Du wirklich basteln willst, kannst Du natuerlich
auch auf dem Server PDFs herstellen, z.B. mit PHP.
Gruesse,
Thomas