使用MPDF对象添加数字签名(add Digital Signature using mPDF ob

2019-10-22 03:42发布

我使用MPDF创建一个PDF。 我想数字签名的PDF文档添加。

我只能找网上的例子添加数字签名到TCPDF对象,而不是一个MPDF。

有没有人有关于这个问题,可以帮助我的信息吗?

这是我的PHP代码:

$pdf=new mPDF('en','A4','','DejaVuSansCondensed',$template->margin_left,$template->margin_right,$template->margin_top,$template->margin_bottom,$template->margin_header,$template->margin_footer);

$pdf->setAutoFont();
$pdf->SetHTMLHeader($header);
$pdf->SetHTMLFooter($footer);
$pdf->writeHTML($printable);

$pdf->Output($file_name, "D");

非常感谢!

Answer 1:

编辑(14年5月17日):

我已经找到了下一个图书馆 - 在这里 (向下滚动),并用正确的Zend图书馆包装它,使其工作开箱即取得了一定的利用它。 所以,如果你想用PHP进行数字签名PDF文档,你可以使用下一个库。 http://www.mediafire.com/download/181rgs86nvr4nd5/signPdf.zip

几个星期的寻找用于签名已经生成的PHP文件中的PHP解决方案之后,这是唯一与我找到了很好的性能解决方案的工作,它可以与任何PDF库中使用。

感谢达米尔开发这个库。


旧的过时的答案
我有同样的问题,努力为好。 我已经找到了,现在唯一的解决办法是创建PDF,然后使用https://www.setasign.com/products/fpdi/about/#p-510到PDF导入TCPDF。

然后用TCPDF签字。

首先创建一个类,然后从FPDI和继承TCPDF

require_once('tcpdf.php');
require_once('fpdi.php');
class Signpdf_lib extends FPDI{}

然后做实际签约

$pdfSigner = new Signpdf_lib();
$pageCount = $pdfSigner->setSourceFile($this->pdfFilePath);
// iterate through all pages
for ($pageNo = 1; $pageNo <= $pageCount; $pageNo++) {
    // import a page
    $templateId = $pdfSigner->importPage($pageNo);
   // get the size of the imported page
   $size = $pdfSigner->getTemplateSize($templateId);
   // create a page 
   $pdfSigner->AddPage('P', array($size['w'], $size['h']));
  // use the imported page
    $pdfSigner->useTemplate($templateId);
}
$info = array(
    'Name' => "$documentName - $documentNumber",
    'Location' => 'IL',
    'Reason' => 'DOC SIGN',
    'ContactInfo' => 'user details',
);
//load the certificate
$certificateStr = Signatures_lib::loadSignature();
// set document signature
$pdfSigner->setSignature($certificateStr, null, null, null, 1, $info);
// define active area for signature appearance
$pdfSigner->setSignatureAppearance(0, 5, 30, 30);
$pdfSigner->Output($this->pdfFilePath, 'F');

我曾试图用TCPDF签名算法和MPDF使用它,但没能做到这一点,所以如果有人获得成功的我怎么会很高兴知道!



文章来源: add Digital Signature using mPDF object