我想在 MPDF 中使用谷歌字体。我按照他们的指示一步一步地进行,但它对我不起作用。我按如下方式注册 MPDF 对象:
$defaultConfig = (new Mpdf\Config\ConfigVariables())->getDefaults();
$fontDirs = $defaultConfig['fontDir'];
$defaultFontConfig = (new Mpdf\Config\FontVariables())->getDefaults();
$fontData = $defaultFontConfig['fontdata'];
$mpdf = new \Mpdf\Mpdf([
'fontDir' => array_merge($fontDirs, [
__DIR__ . '/font',
]),
'fontdata' => $fontData + [
'comfortaa' => [
'R' => 'Comfortaa-Regular.ttf',
'B' => 'Comfortaa-Bold.ttf',
]
],
]);
$mpdf->WriteHTML($html);
来自谷歌,我使用字体 Comfortaa。我将其下载为静态 TTF 文件,谷歌为您提供了这种能力。我为 Comfortaa-Regular.ttf 使用了 400 版本,为 Comfortaa-Bold.ttf 使用了 700 版本。在当前文件夹中,有一个名为fonts.
我将 CSS 声明为内联样式,如下所示:
<td class="content-block powered-by" style="font-family: comfortaa; vertical-align: top; font-size: 13px; color: #b9b9b9; text-align: center;">
Powered by <a href="https://example.com" style="font-size: 13px; text-align: center; color: #b9b9b9;"><strong style="text-decoration:none;"><span>Flowmarket</span></strong></a>.
</td>
但是,字体仍然没有加载。我也没有收到错误消息,所以我不知道从哪里开始。谷歌字体有没有可能编码错误?我正在使用 MPDF 版本 8.0.5.0。
小怪兽爱吃肉