dompdf 0.7.0 beta的加粗字体

3
我将使用DOMPDF 0.7.0版本从HTML生成PDF文件,但是当我需要使用自定义字体(arial)并设置为粗体时会出现问题,在渲染后粗体字体无法正常工作。
这是我目前正在使用的CSS样式:
@font-face {
    font-family: 'font';
    font-style: normal;
    font-weight: normal;
    src: url(dompdf/font/arial.ttf);
}

@font-face {
    font-family: 'font';
    font-style: normal;
    font-weight: bold;
    src: url(dompdf/font/arialbd.ttf);
}
body{
    font-family: 'font';
}

以下是dompdf的PHP代码:

require_once 'dompdf/autoload.inc.php';
use Dompdf\Dompdf;
$dompdf = new Dompdf();
$dompdf->load_html($html);
$dompdf->setPaper('A4', 'portrait');
$dompdf->render();
$pdf = $dompdf->output();
file_put_contents('pdf/sptjm.pdf', $pdf)

这是HTML格式的结果: 在此输入图片描述 这是PDF格式的结果: 在此输入图片描述 PDF文件没有显示加粗字体,请帮忙解决。谢谢。

HTML本身是什么样子的? - BrianS
@BrianS,问题已经解决了伙计。谢谢。 - maghfirzakir
1个回答

4

我只是简单地使用不同的字体名称来完成了它:

@font-face {
    font-family: 'font';
    font-style: normal;
    font-weight: normal;
    src: url(dompdf/font/arial.ttf);
}

@font-face {
    font-family: 'font2';
    font-style: normal;
    font-weight: bold;
    src: url(dompdf/font/arialbd.ttf);
}
body{
    font-family: 'font';
}

因此,当我需要粗体字时,只需简单地调用另一种字体名称,因为它基本上是不同的字体来源。


我有同样的问题。不同的字体名称可以工作。但是为什么相同的字体名称不能工作呢?是个bug吗? - Shawn
1
我现在正在寻找这个,但发现将其声明为“bold”和700之间存在差异。我一直在使用基于权重的声明来设置字体系列。我添加了一个粗体定义,它起作用了。如果有人偶然遇到同样的问题,我在这里添加了解决方法。 - TS'

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接