Apache FOP:在PDF中显示UTF-8字符(没有嵌入?)

Tyl*_*r D 7 apache pdf fonts utf-8 apache-fop

我正在尝试使用FOP导出带有UTF-8字符的PDF,最好不需要嵌入字体.
以下代码:

<fo:block font="10pt Helvetica" text-align="justify" space-after="10pt" space-before="8pt" keep-with-previous="auto" keep-together.within-page="auto"> 
  <fo:block font-weight="bold" color="gray">Summary</fo:block>
  <fo:block text-indent="1em" keep-with-previous="always">
    <fo:block text-indent="1em" space-before="4pt">
      <fo:block text-indent="1em" space-before="4pt">????????????????????????
      </fo:block>
    </fo:block>
  </fo:block>
</fo:block>
Run Code Online (Sandbox Code Playgroud)

在PDF中生成####################.我知道这个问题:http://xmlgraphics.apache.org/fop/faq.html#pdf-characters

当我进入Document Properties-> Fonts时,Helvetica字体列为'Encoding:ANSI'.有没有办法改变这个?

如果我是嵌入式的,那么在没有访问Helvetica.ttf的情况下最好的方法是什么?我尝试过使用DejaVuSans,但我最终用方块代替#符号.

请注意,这不是命令行的一次性使用(这将是一个开始),而是现有应用程序的扩展.我试图支持UTF-8字符而没有太多的复杂性.

D.S*_*ley 7

AFAICT,PDF规范中包含的字体仅包含ISO-Latin-1中的字符.如果你想要一个超出附件D:字符集和编码中定义的字符,那么你应该嵌入字体.