Automatische Seitenumbrüche innerhalb einer einzigen Multicell mit FPDF Frage Automatische Seitenumbrüche innerhalb einer einzigen Multicell mit FPDF zu Favoriten hinzufügen

Daumen hoch 1 Daumen runter

Kennt jemand eine gute Lösung, um in FPDF einen großen Text (mehr als eine PDF-Seite) aus einer Datenbankabfrage auszugeben?

Anforderungen:

  • Multicell (Automatische Zeilenumbrüche)
  • Automatischer Seitenumbruch

Derzeit löse ich dies, indem ich den Text in einzelne Absätze aufsplitte und dann jeden einzeln als Multicell ausgebe. Vor der Ausgabe jeder Multicell prüfe ich anhand von Näherungswerten auf Basis von GetStringWidth, ob der nächste Absatz noch passen kann und mache ggf. einen manuellen Seitenumbruch.

Habe ich ein Feature von FPDF übersehen (kenne die Library erst seit zwei Wochen) oder gibt es eventuell eine passende Erweiterung, um innerhalb einer einzigen Multicell AutoPageBreaks zu aktivieren?

Antworten


Diese Antwort als GUT bewerten 1 Diese Antwort als SCHLECHT bewerten

Vielleicht hilft Dir das:

Lad Dir mal diese Klasse runter: http://www.fpdf.de/downloads/addons/3/

Darin schmeisst Du Zeile 39 mal raus, bzw. auskommentieren.

Und statt des dortigen Beispiels probier mal das: http://pastebin.com/7Ny6PW6W

bzw. ersetze $data entsprechend mit deinem Inhalt.

Ach Mensch, ich sollte sowas nicht machen wenn das Hirn schon weg ist. Vermutlich ist das ja eh die gleiche Lösung die Du bereits hast.

kai am 26.01.2012

Funktioniert leider nicht wie gewünscht, da ich keine Möglichkeit habe den Abstand nach unten zu erhöhen. Es wird zwar umgebrochen, aber erst ganz am Ende der Seite ohne Berücksichtigung eines bei AutoPageBreak vorgegebenen Zusatzabstands. Das hatte ich aber auch vergessen in der Frage anzugeben.

jteriete am 30.01.2012
Diese Antwort als GUT bewerten 0 Diese Antwort als SCHLECHT bewerten

Hast Du es mit SetAutoPageBreak() probiert?

http://www.fpdf.de/funktionsreferenz/SetAutoPageBreak/

Das sollte ja eigentlich genau den Zweck erfüllen, ob das auch automatisch mit MultiCell funktioniert, vermag ich aber nicht sagen.

 

Diese Antwort als GUT bewerten 0 Diese Antwort als SCHLECHT bewerten

Jupp, habe ich probiert. Funktioniert leider nicht innerhalb einer Multicell, die die Seitengrenze sprengt.

Diese Antwort als GUT bewerten 0 Diese Antwort als SCHLECHT bewerten

Dank Dir kai. Probiere ich in den nächsten Tagen mal aus. Kannte die Klasse zwar schon, hab aber nie dran gedacht, die für etwas anderes als richtige Tabellen einzusetzen. Manchmal sieht man halt den Wald vor lauter Bäumen nicht.

Deine Antwort

Registrierter User Bereits registriert? Bitte logge dich vor dem Antworten ein.

Deine Daten