Кажется, что конфигурация FOP установлена неправильно. Измените или скопируйте файл fop.xconf
, который вы найдете в папке conf
в каталоге установки FOP.
В этом файле найдите тег <renderer mime="application/pdf">
. Внутри дочернего тега <fonts>
добавьте <auto-detect/>
. Вы должны получает <renderer>
конфигурацию, как это (я удалил все комментировал текст):
<renderer mime="application/pdf">
<filterList>
<!-- provides compression using zlib flate (default is on) -->
<value>flate</value>
<!-- encodes binary data into printable ascii characters (default off)
This provides about a 4:5 expansion of data size -->
<!-- <value>ascii-85</value> -->
<!-- encodes binary data with hex representation (default off)
This filter is not recommended as it doubles the data size -->
<!-- <value>ascii-hex</value> -->
</filterList>
<fonts>
<!-- ... lots of commented stuff in here ... -->
<auto-detect/>
</fonts>
</renderer>
Затем следует вызвать команду ФОП с -c
опции, например,
fop -c path/to/file/fop.xconf myfile.fo myfileout.pdf
И он должен работать должным образом (при условии, что лицо шрифта может правильно отобразить конкретный символ).
Возможно, это может вам помочь: http://stackoverflow.com/questions/17956218/xsl-fo-foreign-characters-polish-unicode-in-apache-fop-v-1-1 – potame
Кажется, что он работает правильно , Каким шрифтом вы хотите пользоваться (Arial, Helvetica, ...)? Вы проверяете, что он установлен на вашем компьютере? – potame
@potame Я пробовал как Arial, так и Times. Они оба установлены. – alex