php的插件 tcpdf ,怎么指定每个页面图片的宽度啊

php的插件 tcpdf ,怎么指定每个页面图片的宽度啊,第1张

$pdf->SetHeaderMargin(5)//设置头间距

$pdf->SetFooterMargin(10)//设置尾间距

$pdf->SetMargins(15, 27, 15)

CPDF具有以下特性:

1、支持页面页脚;

2、支持HTML标签代码;

3、支持jpg/png/gif/svg图形图像;

4、支持表格;

5、支持中文字符;(有些PDF类不支持中文或者处理中文相当麻烦)

6、自动分页,自动页码,等等。

如何使用

您可以从TCPDF官网获取最新版本:http://www.tcpdf.org。官网提供了几十个示例以及说明文档,下载解压后一定要注意文件路径,如何使用TCPDF,可以从以下5个步骤完成:

1、require_once导入tcpdf.php文件及相关配置信息

2、实例化TCPDF;

3、设置PDF文档的格式,包括文档信息、页眉、页尾、字体、外间距、图片边框、分页等;

4、导入PDF文档的内容,可以是单行或多行简单字符串,也可以HTML格式的字符串等;

5、输出PDF文档。

代码示例:

复制代码代码如下:

require_once('tcpdf.php')

//实例化

$pdf = new TCPDF('P', 'mm', 'A4', true, 'UTF-8', false)

// 设置文档信息

$pdf->SetCreator('Helloweba')

$pdf->SetAuthor('yueguangguang')

$pdf->SetTitle('Welcome to helloweba.com!')

$pdf->SetSubject('TCPDF Tutorial')

$pdf->SetKeywords('TCPDF, PDF, PHP')

// 设置页眉和页脚信息

$pdf->SetHeaderData('logo.png', 30, 'Helloweba.com', '致力于WEB前端技术在中国的应用',

array(0,64,255), array(0,64,128))

$pdf->setFooterData(array(0,64,0), array(0,64,128))

项目需要把html页面转换成pdf,并带图片。

网上试了好几种,发现tcpdf这个方法,很管用。

其中主要问题有html页面带css样式展示出来,图片也附带,下载不显示文件名等

文件下载:TCPDF 《======下载 ,放到自己的项目里。

源代码:

require APP_ROOT_PATH."/system/utils/Tcpdf/tcpdf.php"

//实例化

$pdf = new TCPDF('P', 'mm', 'A4', true, 'UTF-8', false)

// 设置文档信息

$pdf->SetCreator('Victor')

$pdf->SetAuthor('Victor')

$pdf->SetTitle('xxx')

$pdf->SetSubject('')

$pdf->SetKeywords('')

//设置页眉信息 参数分别是LOGO地址,LOGO大小,两行标题,标题颜色,分割线颜色。。颜色是RGB

$pdf->SetHeaderData('', 30, '', '', array(0,0,0), array(0,0,0))

//设置页脚信息

$pdf->setFooterData(array(0,0,0), array(0,0,0))

// 设置页眉和页脚字体

$pdf->setHeaderFont(Array('stsongstdlight', '', '12'))

$pdf->setFooterFont(Array('helvetica', '', '8'))

//设置默认等宽字体

$pdf->SetDefaultMonospacedFont('courier')

//设置间距

$pdf->SetMargins(15, 27, 15)

$pdf->SetHeaderMargin(5)

$pdf->SetFooterMargin(10)

//设置分页

$pdf->SetAutoPageBreak(TRUE, 15)

//设置图片比例

$pdf->setImageScale(1.25)

//将页眉页脚的信息输出出来。

$pdf->AddPage()

//设置字体 - 正文标题的哦。B是加粗,15是大小

$pdf->SetFont('stsongstdlight', 'B', 15)

$pdf->Write(20, '', '', 0, 'C', true, 0, false, false, 0)

//设置字体 - 正文内容的哦。B是加粗,15是大小

$pdf->SetFont('stsongstdlight', '', 10)

ob_end_clean()

$pdf->writeHTMLCell(0, 0, '', '', 输出模板(我用的TP,所以用的fetch), 0, 1, 0, true, '', true)

//40:x轴,95:y轴,40:图片大小

$pdf->Image('/xxx/xxx/xxx.png', 40, 95, 40, '', '', '', '', false, 100)

//输出PDF。第二个参数默认是I,是浏览器预览。D是下载

$name="xxx.pdf"

$pdf->Output($name,'D')

如果下载发现文件名不显示,去tcpdf.php中的方法Output的7565行左右,把这段屏蔽了:

if ($dest[0] != 'F') {

$name = preg_replace('/[\s]+/', '_', $name)

$name = preg_replace('/[^a-zA-Z0-9_\.-]/', '', $name)

}

就可以显示了

--------


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/11318927.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存