【发布时间】:2021-05-03 07:37:45
【问题描述】:
我有一个 mPDF 实例,在其中我用一个空数组覆盖了字体目录和 fontdata。
我想要实现的是,当我添加具有未在我的字体数组中配置的字体系列的 HTML 时,会引发错误。现在它会自动使用手动添加的字体。
mPDF 实例化
$config = [
'mode' => 'utf-8',
'format' => 'A4',
'author' => 'John Doe',
'creator' => 'John',
'default_font_size' => 12,
'default_font' => '',
'margin_left' => 0,
'margin_right' => 0,
'margin_top' => 0,
'margin_bottom' => 0,
'margin_header' => 0,
'margin_footer' => 0,
'orientation' => 'P',
'fontDir' => [], // Don't use fallback font dir.
'fontdata' => [], // Don't use fallback fontdata
$mpdf = new Mpdf($config);
手动添加 Roboto
$config['fontDir'] = array_merge($config['fontDir'], ['path/to/my/custom/roboto/font']
$config['fontdata'] = array_merge(config['fontdata'], [
'roboto' => [
'R' => 'Roboto-Regular.ttf',
],
];
期望的结果
我遇到的问题是,当我执行以下操作时:
$mpdf->WriteHTML('<body style="font-family: Lato">Hello world!</body>');
mPDf 自动使用我手动添加的 Roboto 作为后备字体。但我很想知道是否有一种方法可以让 mPDF 抛出一个错误,指出字体 Lato 未在其字体数据中配置。
真的希望你们能帮帮我!
亲切的问候。
【问题讨论】: