2014-03-03 6 views
3

PHP에서 HTML2PDF 변환기를 사용하여 PDF를 생성하고 있습니다.HTML2PDF - 하나 이상의 페이지 추가

내 html이 너무 커서 단일 페이지에 맞지 않는 것 같습니다. 내가 PDF를 생성하려고 할 때 나는 다음과 같은 오류를 얻고있다

..

아직 적절한 해결책을 찾을 수 없습니다

'한 페이지에 맞지 않는 TD 태그의 내용'. 제발 제발.

이것은 PDF를 생성하는 마지막 코드입니다.

require_once("../html2pdf_new/html2pdf.class.php"); 

try 
{ 
    $html2pdf = new HTML2PDF('P','A4','fr'); 
    $html2pdf->pdf->SetDisplayMode('fullpage'); 
    $html2pdf->WriteHTML($content); 
    $html2pdf->Output('exemple.pdf'); 
} 

catch(HTML2PDF_exception $e) { 
    echo $e; 
    exit; 
} 

$content은 모든 html을 포함합니다.

+0

아마도 테이블 대신 div를 사용하는 것이 좋습니다. – duellsy

+0

선생님, 테이블 구조 만 사용해야합니다. – Shri

+0

작은 덩어리로 내용을 나누는 것 이외에 직접 해결할 수있는 방법이 없다고 생각합니다. – duellsy

답변

0

'찾을 새 HTML2PDF_exception (7);' html2pdf.class.php에 저장하고 비활성화하십시오. 마찬가지로 :

if ($this->_testTdInOnepage && $this->_subHtml->pdf->getPage()>1) { 
     //throw new HTML2PDF_exception(7); 
    } 
+0

Shri는 "적절한 해결책"을 요구했습니다. 예외 만 주석으로 처리하고 결과를 살펴 보아도 이것이 적절한 해결책이 아님을 알 수 있습니다. – realUser404

0

중첩 된 테이블이있는 경우 여러 페이지로 나뉩니다.

중첩 테이블을 피하십시오.

작동합니다. 이 문제가 계속되면

Forum

1

에서 발견 : 나는 방법

HTML2PDF::setTestTdInOnePage(false)

값 작품이 설정으로 고정. html2pdf 메인 클래스 파일에는 setTestTdInOnePage 메소드가 있습니다.이 메소드는 true로 설정된 경우 단일 페이지 내에서 td 렌더링을 수행합니다. 항상 true이므로 우리의 td 데이터가 하나 이상의 페이지를 초과하므로이 예외가 발생합니다. 이를 피하기 위해 수표를 통과하려면 false로 설정할 수 있습니다.

1

이 오류를 극복하기 위해 setTestTdInOnePage을 false로 설정할 수 있습니다.

$html2pdf = new HTML2PDF('P', 'A4', 'en'); 

$html2pdf->setTestTdInOnePage(false);