我有一张名片布局的 jpg 图像,尺寸为:9.8 厘米/5.9 厘米。我必须把它作为背景布局,在这个布局之上我必须打印姓名/地址/电话号码电子邮件等。然后打印/保存为 pdf 供以后使用。
但问题是我不能让它与 FPDF 或 TCPDF 一起使用。知道我该如何准备这个吗?使用 FPDF 还是 TCPDF?
我有一张名片布局的 jpg 图像,尺寸为:9.8 厘米/5.9 厘米。我必须把它作为背景布局,在这个布局之上我必须打印姓名/地址/电话号码电子邮件等。然后打印/保存为 pdf 供以后使用。
但问题是我不能让它与 FPDF 或 TCPDF 一起使用。知道我该如何准备这个吗?使用 FPDF 还是 TCPDF?
使用 TCPDF,您可以完全按原样定位元素,因此您可以执行类似的操作
$pdf = new TCPDF('L', 'mm', 'A4'); //Or whatever your required settings are
//Basic setup
$pdf->setPrintHeader(false);
$pdf->setPrintFooter(false);
$pdf->AddPage();
$pdf->Image('src', x, y); //Where x and y are the offset (probably 0, 0)
$pdf->writeHTMLCell(w, h, x, y, 'html') //Again where x and y are offset
$pdf->Output('filename.pdf', 'D'); //To force download
TCPDF 在线文档不是很好,但是这些示例很有帮助http://www.tcpdf.org/examples.php
您特别询问了创建名片大小的文档,因此您应该使用:
//Sets document size to a 5.9cm x 9.8cm landscape oriented page
$pdf = new TCPDF('L', 'mm', array(59,98));
该文档在此处提供了预定义页面大小的列表:http ://www.tcpdf.org/doc/classTCPPDF.html#a087d4df77e60b7054e97804069ed32c5
例子 n. http://www.tcpdf.org上的51显示了如何创建整页背景。然后,对于页面格式,查看getPageSizeFromFormat()方法的源码文档(已经定义了300多种页面格式,包括名片)。
要在 fpdf 上设置背景,您必须在类中设置 Header() 函数时首先调用 Image()。
我通常这样做的方式是在我自己的类中扩展扩展 FPDF,即:
要求('路径/到/fpdf.php);
class SomeClassName extends FPDF {
// 如果需要,添加实例变量
....
function Header(){
// 现在调用 Image()
$this->Image(); //在这里设置你的背景
...
}
}
如果您查看 fpdf.org 站点中的常见问题解答,您将看到有关如何执行此操作的(模糊)说明。