2013-03-05 7 views
5

Chcę utworzyć stopkę dla dokumentu PDF, który zawiera wyrównaną datę, kreator wyśrodkowany i wyrównaną stronę. Powinny one być w jednej linii. Próbowałem następujący kod:TCPDF Align Left Center Right w pojedynczej linii

$this->Cell(0, 10, $date->format('d.m.Y'), 0, false, 'L', 0, '', 0, false, 'T', 'M'); 
$this->Cell(0, 10, 'Creator', 0, false, 'C', 0, '', 0, false, 'T', 'M'); 
$this->Cell(0, 10, 'Page '.$this->getAliasNumPage().'/'.$this->getAliasNbPages(), 0, false, 'R', 0, '', 0, false, 'T', 'M'); 

Twórca jest przesunięty w prawo i nakładek ze strony:

PDF Document Footer

Czy ktoś ma rozwiązanie tego problemu?

+0

Kod wygląda prawo do mnie zgodnie z docs: http://www.tcpdf.org/doc/code/classTCPDF.html#a33b265e5eb3e4d1d4fedfe29f8166f31. Co się stanie, jeśli skomentujesz linię numeru strony? – mkaatman

+0

oh, zapomniałem o tym wspomnieć! następnie twórca jest również po prawej stronie. – Benny

+0

Jeśli możesz podać większy przykład kodu, mogę spróbować ustawić go lokalnie, aby zobaczyć, czy otrzymam takie same wyniki. Co się stanie, jeśli pierwsza komórka zostanie wyśrodkowana? Czy to jest najnowsza wersja TCPDF? – mkaatman

Odpowiedz

3

trzeba ustawić szerokość Cell(), gdyż zgodnie z docs http://www.tcpdf.org/doc/code/classTCPDF.html#a33b265e5eb3e4d1d4fedfe29f8166f31 Twój $date->format('d.m.Y')Cell() rozszerza do prawego marginesu, zmuszając innych komórek w wierszu do prawego marginesu.

$ w (float) Szerokość komórki. Jeśli 0, komórka rozciąga się do prawego marginesu.

spróbować czegoś jak (może trzeba dostosować w zależności od rozmiaru czcionki)

$this->Cell(20, 10, $date->format('d.m.Y'), 0, false, 'L', 0, '', 0, false, 'T', 'M'); 
$this->Cell(20, 10, 'Creator', 0, false, 'C', 0, '', 0, false, 'T', 'M'); 
$this->Cell(20, 10, 'Page '.$this->getAliasNumPage().'/'.$this->getAliasNbPages(), 0, false, 'R', 0, '', 0, false, 'T', 'M'); 
4

wpadłem kwestii wyrównania z TCPDF też. Zauważyłem, że jeśli użyjesz współrzędnej x jako 0, to użyjesz atrybutu "R" dla wyrównania prawego. Ale jeśli jest ustawiony na wartość niezerową, ignoruje ustawienie "R". Oto oświadczenie, którego użyłem do prawidłowego wyrównania.

$this->Cell(0, 9, 'Text-to-be-aligned-right', 0, false, 'R', 0, '', 0, false, 'T', 'M'); 
+0

Dzięki! – masterchief

Powiązane problemy