我正在尝试使用TCPDF创建一个PDF文件。但是当我试图在HTML中插入内联CSS时,它显示的是一个空白页面!以下是我的HTML的几行:
pdf->AddPage();
// set font
$pdf->SetFont('helvetica', 'B', 20);
$pdf->Write(0, 'Example of HTML Justification', '', 0, 'L', true, 0, false, false, 0);
// create some HTML content
$html = '
<div id="wrapper" style="width:900px;height:auto;margin:0 auto;">
<div id="header" style="width:900px;height:180px;border-bottom:2px solid #5a5a5a;">
<div id="img" style="width:174px;height:87px;position:relative;top:10px;left:350px;"><img src="Untitled Document_files/logoticket.png" /></div>
<div id="text" style="width:250px;position:relative;left:315px;top:20px;font-family:Arial, Helvetica, sans-serif;font-weight:bold;font-size:14px;">E-TICKET/RESERVATION VOUCHER</div>
<div id="text2" style="width:200px;position:relative;left:345px;top:40px;font-family:Arial, Helvetica, sans-serif;
font-weight:bold;font-size:12px;">Visit - www.bookings.7sisters.in</div>
</div>
<div id="mainContent">
<div id="icon" style="width:600px;
height:37px;
position:relative;
left:190px;
top:20px;">
<img src="Untitled D.....
等等。
我正在TCPDF示例39中插入代码。但是输出只有TCPDF徽标和行"HTML对齐示例"。原因是什么?或者它不支持内联CSS?
TCPDF对CSS的支持非常有限。它不支持所有属性。
目前,只支持以下CSS属性:
- 字体系列
- 字体大小
- 字体重量
- 字体样式
- 颜色
- 背景色
- 文字装饰
- 宽度
- 高度
- 文本对齐
因此,尝试删除其他属性,并判断它是否有效。
此外,这是一个活跃的论坛,用于与TCPDF相关的讨论。
TCPDF文档
TCPDF的替代品绝对值得一试:
domPDF
主要功能
- 处理大多数CSS2.1和一些CSS3属性,包括@import、@media&页面规则
- 支持外部样式表,可以是本地的,也可以是通过http/ftp(通过fopen包装)
- 支持复杂的表,包括row&列跨度,单独&折叠边界模型,单个单元格样式
domPDF文档
有用的教程:http://kyokasuigetsu25.wordpress.com/2011/07/14/how-to-use-dompdf-with-css/
mPDF
示例(PHP和生成的PDF)可以在这里和这里找到。
mPDF文档
在我的例子中,服务器在双引号中添加了斜杠-tcpdf忽略了style等属性而没有发出警告。所以我通过stripesashes函数
我发现了一个解决方案:
<h1>Heading<small>Text(is smaller than heading.)</small></h1>
希望这能帮助到别人。
我使用了您提供的代码,并使用内联CSS将"Visit-www.bookings.7sister.in"的颜色更改为红色。
请参阅我的示例输出https://www.box.com/s/520e9e1f4976802696ec
没有完全支持CSS的PHP库。TCPDF做得很好,即使对于较大的字符串也有相对良好的性能。查看示例,例如006、007、21或061。