我正在使用FPDI渲染PDF,其中PDF设置为背景,但希望在其上包含SVG文件,由于某种原因,在使用TCPDF库时会出现错误。是否有任何变通办法或我的代码不正确。
(在我输入“ImageSVG”和“require('tcpdf.php')”行之前,它工作得很好)
这是我的PHP代码:
ob_clean();
ini_set("session.auto_start", 0);
define('FPDF_FONTPATH','font/');
define('FPDI_FONTPATH','font/');
require('fpdf.php');
require('fpdi.php');
require('tcpdf.php');
$pdf = new FPDI();
// let's get an id for the background template
$pdf->setSourceFile('/home/user/public_html'.$pdfName);
$backId = $pdf->importPage(1);
// iterate over all pages of HTML_Generated_pdf.pdf and import them
$pageCount = $pdf->setSourceFile('/home/user/public_html/wp-content/themes/myTheme/'.$filename.'.pdf');
for ($pageNo = 1; $pageNo <= $pageCount; $pageNo++) {
// add a page
$pdf->AddPage($specs['h'] > $specs['w'] ? 'P' : 'L', 'Letter');
// add the background
$pdf->useTemplate($backId);
// import the content page
$pageId = $pdf->importPage($pageNo);
// add it
$pdf->useTemplate($pageId);
$pdf->ImageSVG($file='images/EN-Logo.svg', $x=30, $y=100, $w='', $h=100, $link='', $align='', $palign='', $border=0, $fitonpage=false);
}
$pdf->Output($filename.'2.pdf', 'F');
我得到的错误:ImageSVG不是FPDI库的方法。
我知道这个方法是我已经包含的TCPDF库的一部分(第7行文本)。有人在乎帮忙吗?
答案 0 :(得分:2)
删除FPDF require('fpdf.php');
的require语句。这样FPDI将扩展TCPDF而不是FPDF。
您也可以删除常量。如果使用TCPDF,则不需要FPDF常量。另外FPDI_FONTPATH
它根本就没有使用过,也没有记录,无论如何都要使用。