2016-10-11 2 views
0

Я создал файл PDF из файла xsl, но мои кириллические буквы заменены символом #. Что я могу сделать? Пожалуйста, если вы можете дать точные ответы с точными примерами. Спасибо!!!Невозможно показать кириллические буквы в формате PDF, созданные apache fop

Это просто часть моего кода, который использует буквы кириллицы:

 <fo:table-cell padding="1em" text-align="center"> 
     <fo:block > 
      <fo:leader leader-pattern="rule" leader-length="80%" rule- style="solid" rule-thickness="1pt" /> 
      <fo:block xml:lang="RU" font-family="Times New Roman" text- align="center">(подпись)</fo:block> 
     </fo:block> 
     </fo:table-cell> 
+0

Возможный дубликат [Apache FOP Отображение ### с помощью SunSim] (http://stackoverflow.com/questions/25895984/apache-fop-displayi ng-with-sunsim) – lfurini

+0

Вы должны настроить шрифт Times New Roman, который хотите использовать. – lfurini

ответ

0

Просто создайте XML-файл

<?xml version="1.0"?> 
<fop version="1.0"> 
<renderers> 
<renderer mime="application/pdf"> 
    <fonts> 
     <directory>C:\Windows\Fonts</directory> 
    </fonts> 
</renderer> 
</renderers> 
</fop> 

и добавить две строки кода в файле Java:

File userConfig = new File("src/main/java/view/userConfig.xml"); 
FopFactory fopFactory = FopFactory.newInstance(userConfig); 
+0

Обратите внимание, что FOP займет некоторое время, чтобы настроить все шрифты в 'C: \ Windows \ Fonts' (только в первый раз). – lfurini