10

我正在使用 PHP 的 FPDF 库来生成报告,但现在我需要使用不在核心字体中的另一种字体(Verdana)。我添加了这一行:

$pdf->AddFont('Verdana','','verdana.php');

我将文件 verdana.php 和 verdana.z 复制到字体目录。如果我使用以下说明,每件事都可以正常工作:

$pdf->SetFont('Verdana','',6);

但是如果我尝试使用下一条指令(使用粗体):

$pdf->SetFont('Verdana','B',6);

我得到错误:

FPDF error: Undefined font: verdana B

我尝试为 Verdana Bold 添加另一种字体:

$pdf->AddFont('Verdana-Bold','B','verdanab.php');

当然,我把文件verdanab.php 和verdanab.z 放在fonts 目录下。但我得到同样的错误。我缺少什么或如何使用 Verdana 字体(普通和粗体)?

提前致谢。

4

5 回答 5

8

我阅读了一篇关于此的有趣文章。它应该可以帮助您找到所需的内容。

将 TrueType 字体添加到 FPDF 文档

也许是这样的:

$pdf->AddFont('Verdana','B','verdanab.php');
于 2013-07-05T03:47:00.980 回答
2

确保在 require('fpdf.php'); 之前在脚本顶部添加了字体目录

define('FPDF_FONTPATH','./font/');

如果您已经这样做了,那么只需从 setFont() 方法中删除“B”。这是一个快速修复,而不是一个好的做法。

$pdf->SetFont('Verdana','',6);

如需更多帮助,您可以通过此 添加新字体和编码支持

于 2013-12-15T06:32:34.207 回答
2

使用此语法:

$pdf->AddFont('Verdana','','verdanab.php');

而不是使用:

$pdf->AddFont('Verdana','B','verdanab.php');

于 2015-07-21T09:24:46.987 回答
1

标准字体系列:

Courier (fixed-width)
Helvetica or Arial (synonymous; sans serif)
Times (serif)
Symbol (symbolic)
ZapfDingbats (symbolic)

在这里,您可以为 Fpdf 创建自己的 .php 文件:

http://www.fpdf.org/makefont/

于 2020-05-20T15:33:35.240 回答
0

我通过为每种样式定义字体来解决它:

$pdf->AddFont('Verdana','','verdana.php');
$pdf->AddFont('Verdanabold','','verdanabold.php');

然后使用:

$pdf->SetFont('Verdana','',6); // Regular style
$pdf->SetFont('Verdanabold','',6); // Bold style
于 2019-08-30T15:44:05.967 回答