java - Apache FOP 和 Arial 字体

标签 java apache xslt apache-fop

我的 XSL 样式使用 Arial 字体

<fo:block font-family="Arial" font-size="8pt" font-weight="normal"> 

配置文件fonts.xml:

<?xml version="1.0"?>
<fop>
  <renderers>
    <renderer mime="application/pdf">
      <fonts>   
        <base>file:///C:/windows/fonts</base>
      </fonts>
    </renderer>
  </renderers>
</fop> 

也试过用这个:

 <auto-detect/>

 <directory>C:\windows\fonts</directory>

我总是得到:

WARNING: Font "Arial,normal,400" not found. Substituting with "any,normal,400".

要使用 Arial 字体,我应该修复什么?

最佳答案

这对我有用,需要在配置文件中明确指定 Arial 字体:

<?xml version="1.0"?>
    <fop>
      <renderers>
        <renderer mime="application/pdf">       
          <fonts>                           
                <font kerning="yes"  embed-url="file:///C:/windows/fonts/arial.ttf">
                      <font-triplet name="Arial" style="normal" weight="normal"/>
                    </font>                     
            </fonts>
        </renderer>
      </renderers>     
</fop> 

关于java - Apache FOP 和 Arial 字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16548090/

相关文章:

java - Java 中是否有与 C# 的 Lookup 数据结构等效的数据结构?

apache - 从 XAMPP 运行 apache 服务时出错

php session 劫持 - HTTPS 就足够了吗?指纹识别的建议?

java - 迭代器、列表迭代器和列表

java - 将字符串转换为小写以在 xhtml 中进行属性绑定(bind)?

java - 我在Java中的正则表达式哪里做错了?

php - 使用 Docker 将 Apache、MySQL 和 PHP 容器化

xslt - 从 XML 元素中删除空格

xslt - XSLT 文档中的模板以什么顺序执行,它们是否与源 XML 或缓冲输出匹配?

xslt - 将一组行保留在一个页面上,而不将其超出页面限制