6

我在http://dompdf.github.com/上使用 DOMPDF

我正在努力如何为整个页面设置字体。在我制作的模板中,我在 CSS 中将字体设置为 Helvetica,但是当它生成 PDF 时,它默认为 Times New Roman。当我尝试

<script type="text/php">{literal}if ( isset($pdf) ) { 
    $font = Font_Metrics::get_font("helvetica", "bold");
    $pdf->page_text(72, 18, "TEST!", $font, 6, array(0,0,0));}
{/literal}</script>

它打印测试!字体中的文字。但是如何让它应用于整个页面?

谢谢

4

4 回答 4

13

DOMPDF 与 CSS 一起使用,因此您需要像这样设置字体系列:

body {  
    font-family: 'Helvetica'  
}

但请记住,您只能使用已安装的字体。要检查您可以使用哪些字体,请查看字体目录:/dompdf/lib/fonts/

要安装更多字体,请遵循本指南: http ://code.google.com/p/dompdf/wiki/Installation#Font_Installation

于 2012-09-26T14:23:00.433 回答
9

DOMPDF 支持 CSS,因此您可以在 CSS 文件中定义字体并像通常在页面上一样加载它:

body {
    font-family: 'Helvetica'
}
于 2010-02-01T13:56:15.687 回答
2

我有同样的问题。不知何故,DomPDF 在 CSS 中的 font-family 定义有问题。我将内联样式应用于顶部 div 框以解决问题。

<div id="container" style="font-family:sans-serif;">
....
</div>

希望这对仍在阅读该主题的任何人都有效。

于 2011-09-28T15:31:17.413 回答
0

您需要将 font-family 定义添加到 CSS 中的每个元素:

body, #wrapper, #content {
font-family:sans-serif;
}
table{
font-family:sans-serif;
}     
table tr{
font-family:sans-serif;
}    
table td{
font-family:sans-serif;
}        
a:link, a:visited {
font-family:sans-serif;
}
p {
font-family:sans-serif;
}
于 2012-08-05T07:35:35.587 回答