2014-02-27 3 views
-1

문자열이있는 동적 다중 셀을 생성 중입니다. A, B, C와 같이 페이지의 멀티 셀을 가운데에 배치하고 싶습니다. $ pdf-> SetMargins() 동적으로 만들 필요가 있습니다. 즉, 콘텐츠가로드 될 때 자동으로 자체 중심에 배치됩니다. 이것은 시도한 코드이지만 잘못된 것이 있습니다.PDF 내용을 가운데로 설정하십시오.

$pdfWidth = 210; 
col = 9; // This is dynamic so it can be any value from 5-20; 
    $mar = (($pdfWidth + ($col * 8)) /2)/2; 
    $pdf->SetMargins($mar,0,0); 
+0

"* Something * is wrong." 어떻게 든 당신은 무엇을 말하기를 잊었습니다. – usr2564301

답변

1

왜 2로 2를 나눕니 까? 페이지의 전체 너비를 뺀 내용을 빼고 2로 나누면 이미 원하는 여백이 있습니다. 또한, SetMargins()의 override 매개 변수를 'true'로 설정하는 것을 잊지 마십시오.

$pdfWidth = 210; 
$col = 9; 
$mar = (($pdfWidth - ($col*8)) /2); //Only one division by 2 is required 
$pdf->SetMargins($mar,0,0, true); //the 'true' is necessary or it won't override the default margins 

    //VERY IMPORTANT that you set all the above BEFORE adding the page! 

$pdf->AddPage(); 

    //Content of page 

예에서 제공 한대로 셀 폭이 8 인 모든 MultiCell은 페이지에서 완벽하게 가운데에 위치해야합니다.

관련 문제