2016-09-06 2 views
1

필자가 작성할 수있는 PDF 양식이 있고 PHP를 사용하여 양식 번호가 아닌 (PDF 형식 일 필요는 없음) PDF로 된 번호를 작성한 다음 모든 입력 가능 필드가있는 PDF를 다시 출력해야합니다. 원본 문서가있었습니다.PHP 가져 오기 PDF 양식 및 출력 PDF 양식

FPDI 및 FPDF가 작동하지만 PDF 채우기 필드가 프로세스 중에 손실됩니다.

Here 제안 된 mpdf의 대부분은 HTML에서 새로운 PDF 파일을 만드는 방법입니다. mpdf manual가 있지만 어떤 기능이 내 문제를 해결해야하는지 잘 모르겠습니다.

아래 코드는 작업을 수행하지만 모든 PDF 양식 필드는 사라질 것입니다. 그 FAQ에 설명 된대로

include('FPDF-master/fpdf.php'); 
include('FPDI1_6_1/fpdi.php'); 
//include('mpdf60/mpdf.php'); 

$pdf = new FPDI(); 

$pdf->AddPage(); 
$pdf->setSourceFile('myfillableform.pdf'); 
$tplIdx = $pdf->importPage(1); 
$pdf->useTemplate($tplIdx, 0, 0); 

$pdf->SetFont('Times', 'B'); 
$pdf->SetTextColor(0,0,0); 
$pdf->SetXY(140, 45); 
$pdf->Write(0, $someNumber); 
$pdf->Output("newfillableform_with_number.pdf", 'F'); 

답변

2

FPDM을 사용하여 문제를 해결할 수있었습니다. FPDM은 PDF 형식 필드 (읽기 전용 필드 포함)를 채울 수 있습니다.

방금 ​​Acrobat Pro를 사용하여 내 PDF 문서에 다른 필드를 추가하여 해당 필드를 읽기 전용으로 만들고 FPDM을 사용하여 번호 또는 텍스트를 해당 읽기 전용 필드에 쓸 수 있고 PDF 및 기타 모든 필드를 내 문서에 출력 할 수 있습니다 필요한만큼 채울 수 있습니다.

require('fpdm/fpdm.php'); 
$fields = array(
    'field' => "$someNumber" 
); 
$pdf = new FPDM('myfillableform.pdf'); 
$pdf->Load($fields, false); 
$pdf->Merge(); 
$pdf->Output("newfillableform_with_number.pdf", 'F'); 
0

는 FPDI는 양식 필드 또는 기타 주석으로 동적 컨텐츠를 처리 할 수 ​​없습니다.

기존 콘텐츠에 새로운 콘텐츠를 추가하려는 경우 SetaPDF-Stamper component (무료는 아닙니다)을 살펴보십시오.