Skeptiker: Fliesstext: Anzahl Zeilen in HTML-Ausgabe

Hallo.

Ich habe ein verzwicktes Problem.

Mittels eines PHP-Scriptes erzeuge ich aus einer Datenbank eine für den Drucker formatierte HTML-Seite. Dabei muss Fliesstext mit variabler Länge gedruckt werden, der u.U. auch länger als eine Seite sein kann. Zudem soll auf jeder Seite eine Kopf- und Fußzeile gesetzt werden.

Nun denke ich, daß es das beste ist, ich zähle die Zeilen (immer Schriftgröße 10 Punkt), und setzte geziehlt ein paar Leerzeilen für den Seitenumbruch. Dazu muß ich aber wissen, wieviel Zeilen ein variabler Fliesstext im Browser erzeugt.

Wie kann man das feststellen?

Eine Lösung in PHP wäre am besten, Javascript geht aber auch.

Vielen Dank!

  1. Hallo,

    Mittels eines PHP-Scriptes erzeuge ich aus einer Datenbank eine für den Drucker formatierte HTML-Seite. Dabei muss Fliesstext mit variabler Länge gedruckt werden, der u.U. auch länger als eine Seite sein kann. Zudem soll auf jeder Seite eine Kopf- und Fußzeile gesetzt werden.

    da wäre ich auch skeptisch. Ich zweifle an der Robustheit dieser Lösung und den
    CSS-Fähigkeiten heutiger Browser, Dein Vorhaben umzusetzen.

    Mein Vorschlag wäre: Erzeuge eine PDF-Datei nach Deinen Vorgaben.
    Das geht auch mit PHP.

    Freundliche Grüße

    Vinzenz

  2. Mahlzeit,

    Nun denke ich, daß es das beste ist, ich zähle die Zeilen (immer Schriftgröße 10 Punkt), und setzte geziehlt ein paar Leerzeilen für den Seitenumbruch. Dazu muß ich aber wissen, wieviel Zeilen ein variabler Fliesstext im Browser erzeugt.

    Wie kann man das feststellen?

    Gar nicht.

    Eine Lösung in PHP wäre am besten, Javascript geht aber auch.

    Wie - denkst Du - kann ein SERVER-seitiges Skript wissen, wie hoch und breit der Viewport des Browsers des Anwenders und wie groß die dargestellte Schrift ist? In PHP KANN es deshalb gar keine Lösung geben.

    Ansatz- und näherungsweise könntest Du mit Javascript versuchen zu berechnen, wieviele Pixel in der Höhe der ausgegebene Text vereinnahmt ... sobald der Benutzer aber ein eigenes Stylesheet benutzt, Javascript ausschaltet oder Dir sonstwie in die Quere kommt, wird eh nichts draus.

    Meine Empfehlung: vergiss es. Es wird nicht zufriedenstellend funktionieren.

    MfG,
    EKKi

    --
    sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
    1. Hallo EKKi,

      Wie - denkst Du - kann ein SERVER-seitiges Skript wissen, wie hoch und breit der Viewport des Browsers des Anwenders und wie groß die dargestellte Schrift ist? In PHP KANN es deshalb gar keine Lösung geben.

      der Viewport ist für ein Druckstylesheet doch eher irrelevant, oder nicht.
      Ich zitiere aus dem Ausgangsposting:

      Mittels eines PHP-Scriptes erzeuge ich aus einer Datenbank eine für den Drucker formatierte HTML-Seite.

      Ich schloss daher auf ein Druckstylesheet.

      Meine Empfehlung: vergiss es. Es wird nicht zufriedenstellend funktionieren.

      Ich stimme Dir zu, insbesondere wegen der Anforderung:

      Zudem soll auf jeder Seite eine Kopf- und Fußzeile gesetzt werden.

      Daher favorisiere ich das PDF-Format.

      Freundliche Grüße

      Vinzenz