Я использую версию 7.x mPDF и пытался следовать этой документации: https://mpdf.github.io/fonts-languages/fonts-in-mpdf-7-x.html
Я просто не могу заставить его работать.Нет ошибок, но шрифт по-прежнему является шрифтом mPDF по умолчанию.Я также попытался сделать это по-другому с ответами из этих:
Как сгенерировать PDF с помощью mPDF и добавить собственный шрифт Google к нему?
phpmPDF, невозможно установить семейство шрифтов и размер шрифта
добавление шрифта в mPDF
Но я думаю, что они не работают, так как они могут толькобыть для более старой версии, чем 7.X ... Итак, вот моя последняя попытка использовать информацию для документации 7.x.
Вот мой php-файл:
require_once __DIR__ . '/vendor/autoload.php';
$defaultConfig = (new Mpdf\Config\ConfigVariables())->getDefaults();
$fontDirs = $defaultConfig['fontDir'];
$defaultFontConfig = (new Mpdf\Config\FontVariables())->getDefaults();
$fontData = $defaultFontConfig['fontdata'];
$mpdf = new \Mpdf\Mpdf(['tempDir' => __DIR__ . '/upload'],
['fontdata' => $fontData + [
'BentonSans' => [
'R' => 'BentonSans.ttf',
'I' => 'BentonSans-Bold.ttf',
]
],
'default_font' => 'BentonSans'
]);
$url = rawurldecode($_REQUEST['url']);
$html = file_get_contents($url);
$stylesheet = file_get_contents('style.css');
$mpdf->setBasePath($url);
$mpdf->AddFontDirectory('fonts');
$mpdf->WriteHTML($stylesheet,1);
$mpdf->WriteHTML($html);
$mpdf->Output('filename.pdf','I');
Иmy css:
body {
font-family: 'BentonSans';
font-size: 14px;
font-style: normal;
font-variant: normal;
font-weight: normal;
line-height: 20px;
}
Мои пользовательские шрифты хранятся в «шрифтах», которые находятся в той же папке, что и файл php.