我想在我的MAC上通过Apache FOP创建一个包含空格字符的PDF文件。 如果XML文件包含特殊字符,如“ä”,“ö”。“ü”或“ß” 字符将显示为“Ã#”。 如果我在xsl文件中手动编写一些特殊字符,它们将显示正确。
有人有想法吗?
此致
答案 0 :(得分:0)
一个可能相关的问题:XSL FO : Multiple language pdf using french,German and Italian characters
您的FO文件中可能存在编码问题,因为您引用的特殊字符使用FOP的默认设置正确显示,没有特定的字体配置。
(我使用FOP 1.1测试了这个简单的FO文件:
<?xml version="1.0" encoding="UTF-8"?>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master master-name="one">
<fo:region-body />
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="one">
<fo:flow flow-name="xsl-region-body">
<fo:block>File contains special characters like ä, ö, ü or ß.</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
)
我建议检查输入XML文件的字符编码(可能是UTF-8),以及是否在XSLT转换中正确处理(如果使用代码,请检查文件是否使用正确的编码进行读写) )。