Hallo Leute, ich möchte die PFD Rechnung die man im Adminbereich erstellen kann etwas anpassen.
Ich hab bisher alles hinbekommen, nur eins leider nicht.
Da ich ein Briefpapier habe wodrauf die Rechnung gedruckt ist musste ich den Abstand von oben bearbeiten.
Hat alles geklappt. Nun hab ich aber das Problem, das wenn die Rechnung aus 2 Seiten besteht, der Inhalt der zweiten Seite wieder ganz oben anfängt.
Ich hab nun schon an einigen Stellen Änderungen gemacht, aber leider nicht mit gewünschtem Erfolg, kann wer helfen?
welche Änderungen hast du denn gemacht, die zum Erfolg für den Aufbau der 1. Seite geführt haben.
Hast du Änderungen in der tcpdf_config.php gemacht, oder wo?
Es geht um die PDF Rechnung die man im Backend erstellen kann.
Da ich ein bestimmtes Briefpapier nutze, wo oben auf dem Papier mein Logo abgebildet ist.
Sprich, ich musste den Inhalt des PDF einwenig runterschieben.
@baterista
/modules/invoicepdf/myorder.php
Was ich dort geändert habe, werd ich später schreiben.
Wenn die PDF nun aber aus 2 Seiten besteht, dann wird der Abstand auf der 2ten Seite nicht gemacht.
Ich lade mal ein Bild hoch, zur Veranschaulichung.
Wie man hier sieht, sind einige Zeilen aufgrund des Logos nicht sichtbar.
Nun weiß ich nicht, an welcher Stelle ich das ändern muss, damit es auf der 2ten Seite auch den Abstand nach oben gibt.
Hier wäre z.B. eine mögliche Stelle wo ich Änderung machen kann, die wohl auch mit einer neuen Seite zu tun haben. Aber leider brachten diese Änderugen nicht den gewünschten Erfolg.
ich denke es ist so, dass deine 2. Seite bzw. das was auf deiner 2. Seite ausgegeben wird noch keine durch invoice pdf generierte 2. Seite ist.
Kann es sein dass deine erzeugten Inhalte jetzt einfach länger sind als eine DinA4 Seite und noch gar kein Seitenumbruch erzeugt wird.
Also mein Tip wäre, wenn du den Abstand zum Seitenanfang vergrößert hast dann hast du das doch um eine bestimmte Anzahl von Pixeln gemacht.
Diese Anzahl von Pixeln müsstest du dann hier
"// starting a new page …
if ( $iStartPos > 243 ) {…" (Zeile 797)
von den 243 wieder abziehen, damit auch eine echte 2. Seite erstellt wird.
Zumindest habe ich die Position für den Seitenumbruch (243) mal verringert und hatte nen sauberen Umbruch wo auf der 2. Seite der gleiche Abstand zum Seitenanfang war wie auf der ersten.
Der Thread ist zwar schon uralt, aber die Lösung fehlt. Ich stehe im Moment vor dem gleichen Problem. Die Kopf- und Fußzeile habe ich schon entfernt, aber ich bekomme es nicht hin, den Abstand nach obenhin zu vergrößern. Der Briefbogen auf den gedruckt wird, braucht oben mehr Platz.
Hab die Stelle inzwischen auch gefunden. War jetzt eher davon ausgegangen, dass das etwas cleverer aufgebaut ist. So muss man ja an mehreren Stellen den y-Wert ändern.
Ich habe nun zum Anfang eine Konstante definiert und überall wo die Position angegeben ist, addiere ich die Konstante dazu.
Der Abstand auf der ersten Seite passt nun, aber nun stehe ich vor dem gleichen Problem wie Valefor: Auf der Folgeseite ist der obere Abstand zu klein.
In dem Fall passt die Artikelliste noch auf Seite1, aber die Summe, Gesamtsumme etc. erscheinen auf Seite2, allerdings zu weit oben.
Ich suche mal noch weiter…
edit: Wenn die Artikelliste auch auf die 2. Seite geschrieben werden muss, passt der Abstand. Problem ist also scheinbar nur, wenn nur die Summen auf die 2. Seite rutschen.
edit2: Ich habe nun hier noch weiteren Abstand ergänzt:
// generating pdf file
$oArtSumm = new PdfArticleSummary( $this, $oPdf );
$iHeight = $oArtSumm->generate( $siteH );
if ( $siteH + $iHeight > (258-MYCONSTANT) ) {
$this->pdfFooter( $oPdf );
$iTop = $this->pdfHeader( $oPdf )+30; //+30 für 2. Seite
$oArtSumm->ajustHeight( $iTop - $siteH );
$siteH = $iTop;
}
Scheint nun alles zu passen in meinem Fall, aber ich verstehe nicht so ganz warum es mit dem Wert 30 stimmt. Ich füge sonst bei jedem y 13 (MYCONSTANT) hinzu. Naja, ich habe jetzt nicht noch mehr Zeit dafür übrig.