PDF文档内部支持以下字体:Helvetica,Times-Roman,Courier,Zapf-Dingbats和Symbol(均使用Windows ANSI编码)。dompdf 将在 PDF 中嵌入任何引用的字体,只要它已被预加载或可由 dompdf 访问并在 CSS 规则中引用。加载过程对于生成用于类型设置的字体度量是必要的。@font-face
dompdf支持与底层R&OS PDF类相同的字体:类型1(.pfb)和TrueType(.ttf),只要字体指标(.afm / .ufm)可用。捆绑的、基于 PHP 的 php-font-lib 支持加载和子集化字体。
加载字体的过程因您的需求和服务器访问而异。有三种方法可以加载字体:
- 使用 CSS @font规则在运行时加载字体。
- 在命令行中使用 dompdf/load_font.php。
- 浏览到包含的管理站点中的 dompdf/www/fonts.php。
使用 CSS @font规则在运行时加载字体
无需命令行访问。只要您要加载的字体可以在线使用,您就可以通过CSS轻松加载它。
@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: normal;
src: url(http://themes.googleusercontent.com/static/fonts/opensans/v8/cJZKeOuBrn4kERxqtaUH3aCWcynf_cDxXwCLxiixG1c.ttf) format('truetype');
}
在命令行中使用 dompdf/load_font.php
如果您有权访问命令行,则加载字体就像这样简单:
[php] load_font.php "NeutraText-Book" /path/to/neutratext.ttf
在没有任何参数的情况下运行该命令以查看帮助文本。但是,很快,参数是:字体名称,普通字体文件,粗体字体文件,斜体字体文件,粗体斜体字体文件
在随附的管理站点中浏览到 dompdf/www/fonts.php
不言自明(示例)。您唯一需要做的就是确保您已修改管理员用户名/密码组合
注意:load_font.php,并且从 dompdf 0.7.0 开始,默认情况下不会包含管理站点
改编自 dompdf wiki(Unicode How-To、About Fonts and Character Encoding)和其他来源。