在php中导入并签署pdf
我有一个pdf,我想用一个证书和一个php脚本来签名。 我将动作分解为两个步骤:在php中导入并签署pdf,php,pdf,import,Php,Pdf,Import,我有一个pdf,我想用一个证书和一个php脚本来签名。 我将动作分解为两个步骤: 在脚本中导入pdf 在证书上签字 我可以解决第一部分。。。我正在使用TCPDI()和TCPDF 这是我的剧本: <?php require_once('tcpdf/config/tcpdf_config.php'); require_once('tcpdf/tcpdf.php'); require_once('tcpdi.php'); $pdf = new TCPDI(PDF_PAGE_ORIENTATI
- 在脚本中导入pdf
- 在证书上签字
<?php require_once('tcpdf/config/tcpdf_config.php');
require_once('tcpdf/tcpdf.php');
require_once('tcpdi.php');
$pdf = new TCPDI(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
$pdf->AddPage();
$pdf->setSourceFile('file.pdf');
$pdf->Output('output.pdf', 'I')
?>
我没有任何错误,但是输出是空白的,标题上有一条小黑线
你知道有什么问题吗?
我还尝试了FPDF/FPDI
谢谢
问候
2014年11月25日编辑:
以下是我使用TCPDF的解决方案:
$pdf = new TCPDI(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
$pdfdata = file_get_contents('/Users/ynp/Downloads/billofsale.pdf');
$pagecount = $pdf->setSourceData($pdfdata);
for ($i = 1; $i <= $pagecount; $i++) {
$tplidx = $pdf->importPage($i);
$pdf->AddPage();
$pdf->useTemplate($tplidx);
}
$pdf->Output();
$pdf=新的TCPDI(pdf页面方向,pdf单元,pdf页面格式,真,'UTF-8',假);
$pdfdata=file_get_contents('/Users/ynp/Downloads/billofsale.pdf');
$pagecount=$pdf->setSourceData($pdfdata);
对于($i=1;$i进口页($i);
$pdf->AddPage();
$pdf->useTemplate($tplidx);
}
$pdf->Output();
fpdf_tpl.php中可能会出现一些错误,只需更改相关函数的原型即可。您实际上只定义了源文件,但没有导入其中的任何页面。请尝试以下操作:
$pageCount = $pdf->setSourceFile('file.pdf');
for ($pageNo = 1; $pageNo <= $pageCount; $pageNo++) {
$tplIdx = $pdf->importPage($pageNo);
$pdf->AddPage();
$pdf->useTemplate($tplIdx, null, null, 0, 0, true);
}
$pageCount=$pdf->setSourceFile('file.pdf');
对于($pageNo=1;$pageNo importPage($pageNo);
$pdf->AddPage();
$pdf->useTemplate($tplIdx,null,null,0,0,true);
}
通过这种方式,您可以将所有现有页面导入到一个可以与FPDI一起重用的结构中。生成的文档具有一个全新的内部结构,并且您可能会丢失所描述的内容
如果您需要对原始文档进行签名,您可以签出该组件(不是免费的!)。确实可以。但我想使用lib TCPDF,特别是因为签名功能是免费的……PS:for中有一个错误,它是
$pageNo