Spalte der Fußzeile bei PDF Rechnung anpassen

Thema wurde von Teelirium, 31. Mai 2014 erstellt.

  1. Teelirium
    Teelirium Erfahrener Benutzer
    Registriert seit:
    13. Juni 2012
    Beiträge:
    287
    Danke erhalten:
    22
    Danke vergeben:
    141
    Hallo,

    ich bin geradfe auf der Suche nach einem Weg, die Spaltenbreite der Fußzeile in der PDF Rechnung anzupassen. Dadurch, dass ich Kontonummer und BLZ gegen IBAN und BIC auf der Rechnung getauscht habe, ist jetzt meine vierte, ganz rechte Spalte zu schmal für den Text, die linke, erste Spalte dagegen zu breit für den wenigen Text, den ich in dieser Spalte habe.

    Gibt es einen Weg, jede Spalte in der Fußzeile auf der PDF Rechnung individuell breit zu machen?
     
  2. Teelirium
    Teelirium Erfahrener Benutzer
    Registriert seit:
    13. Juni 2012
    Beiträge:
    287
    Danke erhalten:
    22
    Danke vergeben:
    141
    Hat wirklich niemand eine Idee?
     
  3. barbara
    barbara G-WARD 2014-2020
    Registriert seit:
    14. August 2011
    Beiträge:
    35.627
    Danke erhalten:
    11.348
    Danke vergeben:
    1.614
    Hallo Florian,

    ich brauche das auch gerade :)
    werde nachher mal suchen gehen.
     
  4. barbara
    barbara G-WARD 2014-2020
    Registriert seit:
    14. August 2011
    Beiträge:
    35.627
    Danke erhalten:
    11.348
    Danke vergeben:
    1.614
    Ich bin jetzt ein (kleines) Stück weiter.
    in der admin/ gm_pdf_order.php steht:
    Code:
    * -> footer
    	*/
    	$use_footer = false;
    	$footer_cells =  gm_get_content(
    							array(
    								'GM_PDF_FOOTER_CELL_1', 
    								'GM_PDF_FOOTER_CELL_2', 
    								'GM_PDF_FOOTER_CELL_3', 
    								'GM_PDF_FOOTER_CELL_4'
    								),
    								$_SESSION['languages_id'],
    								'NUMERIC'											
    								);
    	for($i=0; $i < count($footer_cells); $i++) {
    		if(!empty($footer_cells[$i])) {
    			$pdf_footer[] = $footer_cells[$i];
    			$use_footer = true;
    		}		
    	}
    und in der admin/ gm/ classes/ gmOrderPDF.php
    gibt es die Zeile:
    Code:
    // -> get footer cell width
    		$footer_cell_width = parent::getInnerWidth() / count($this->pdf_footer);
    Ich weiß nur noch nicht wie ich die Breite da anpassen kann.
     
  5. HolgerNils (xycons.de)
    HolgerNils (xycons.de) G-WARD 2013/2014
    Registriert seit:
    29. Oktober 2011
    Beiträge:
    1.989
    Danke erhalten:
    473
    Danke vergeben:
    369
    Nah dran, Barbara:

    PHP:
            function getFooter() {

                
    // -> get footer cell width
                
    $footer_cell_width parent::getInnerWidth() / count($this->pdf_footer);
    Die zur Verfügung stehende Breite wird durch die Anzahl der Spalten geteilt, sozusagen "Gleichberechtigung" für jede Spalte.

    Bischen später kommt das hier:
    PHP:
                for($i 0$i count($this->pdf_footer); $i++) {
                    
    parent::SetY(parent::getFooterPos() + 2);
                    
    parent::SetX(parent::getLeftMargin() + ($footer_cell_width $i));
                    
    parent::MultiCell($footer_cell_widthparent::getCellHeight(), $this->pdf_footer[$i], '0''L'0);
                }
    Hier wird nun für alle 4 Spalten die ermittelte Breite (Gesamt / 4) eingetragen und genommen.
    Wenn Du nun 4 Spalten hast, dann könntest Du abhängig von Wert $i den Inhalt von $footer_cell_width manipulieren und die gewünschte Spalte etwas vergrößern und eine andere dafür etwas verkleinern (um denselben Wert z. B.)
     
  6. barbara
    barbara G-WARD 2014-2020
    Registriert seit:
    14. August 2011
    Beiträge:
    35.627
    Danke erhalten:
    11.348
    Danke vergeben:
    1.614
    Danke Holger, das werde ich mir die Tage mal genauer ansehen :)