Sara: html2Pdf

Beitrag lesen

Hallo,

Du denkst immer noch umständlich. Versuche dich von der Idee zu lösen, dass man den Fall "erste Seite" anders behandeln müsste als "zweite und folgende Seiten". Versuche noch einmal zu verstehen, was ich dir mit dem Beispiel in Pseudocode klarmachen wollte:

  • Du gehst einfach der Reihe nach deine Datensätze durch, vom ersten bis zum letzten.
  • Vor der Ausgabe des aktuellen Datensatzes muss eine neue Seite begonnen werden, falls die Datensatznummer (günstigerweise ab 0 gezählt) durch 4 teilbar ist, also bei 0, 4, 8, ...
  • Nach der Ausgabe des aktuellen Datensatzes muss die aktuelle Seite beendet werden, falls die Datensatznummer beim Dividieren durch 4 den Rest 3 ergibt, also bei 3, 7, 11, ...

Warum sollte ich mich von dem Gedanken verabschieden dass die zweite Seite anderes behandelt werden soll / muss? Dieses möchte ich nicht, dieses schreibt mir HTML2PDF so vor. Die erste Seite muss so aufgebaut sein

<page backtop="1%" backbottom="2%" backleft="5%" backright="5%"> 
	<page_footer>
    	<p>Hier kommt der Footer rein</p>
	</page_footer>
	Hier kommt die erste Tabelle rein mit 4 Einträgen
</page>

Dass HTML2PDF die zweite Seite an die erste Seite hängt, muss die zweite Seite so beginne:

<page pageset="old">Hier dann die Tabelle usw.</page>

Habe ich später also 2 Seiten, weil 6 Einträge vorhanden sind, muss mein HTML so aussehen

<page backtop="1%" backbottom="2%" backleft="5%" backright="5%"> 
        <page_footer>
            <p>Hier kommt der Footer rein</p>
        </page_footer>
        Hier kommen die ersten 4 Einträge rein = Seite 1
</page>
<page pageset="old">
Hier kommen die letzten 2 Einträge rein = Seite 2

</page>

Hätte ich jetzt 12 Einträge würde es so lauten

<page backtop="1%" backbottom="2%" backleft="5%" backright="5%"> 
  <page_footer>
   <p>Hier kommt der Footer rein</p>
  </page_footer>
   <p>Hier kommen die ersten 4 Einträge rein = Seite 1</p>
</page>
<page pageset="old">
   <p>Hier kommen die zweiten 4 Einträge rein = Seite 2</p>
</page>
<page pageset="old">
   <p>Hier kommen die dritten 4 Einträge rein = Seite 2</p>
</page>

Das heißt also die erste kann und muss immer gleich aussehen. Die zweite und weitere werden einfach unterhalb der ersten angehängt.

Warum tust du dich mit diesem Denkansatz so schwer? Wo liegt konkret das Verständnisproblem?

Ich weiß es nicht, mir fehlt einfach das Verständnis. An dem Problem sitze ich jetzt seit gestern Abend 19 Uhr.