Как заставить пользовательские шрифты работать с jasperserver

При использовании пользовательского шрифта с Jaspersoft Studio Professional (бесплатная версия) и jasperserver community edition (бесплатная) он должен работать тремя способами:

  1. в jaspersoft studio professional, чтобы мы могли увидеть, как он будет выглядеть в процессе разработки
  2. при запуске в виде HTML-отчета в jasperserver, и он должен работать в браузерах на компьютерах, на которых не установлен пользовательский шрифт
  3. при экспорте отчета в формате PDF путем внедрения шрифта в PDF

После поиска вопросов и ответов здесь, в stackoverflow и во многих других местах, я могу найти, как заставить работать некоторые из трех случаев, но не все одновременно. Я использую джасперсервер 6.


person async8192    schedule 05.05.2016    source источник


Ответы (1)


Вот шаги, чтобы заставить его работать в студии jaspersoft и при экспорте PDF. Он по-прежнему выглядит правильно в отчете HTML только в том случае, если шрифт установлен на компьютере браузера.

  1. Install the font into jaspersoft studio
    • preferences -> Jaspersoft Studio -> Fonts
    • Добавлять
    • Family Name должно быть правильным названием шрифта.
    • выберите файл шрифта TrueType (или другой тип) с помощью Browse
    • добавьте жирный шрифт, курсив и т. д. по желанию
    • оставьте имя шрифта PDF пустым, если вы не хотите, чтобы шрифт в PDF-файлах отличался
    • Кодировка PDF CP1252 (западная)
    • установите флажок Встроить этот шрифт в документ PDF - это заставит его работать в PDF-файлах
    • Далее >
    • Добавьте сопоставления для каждого из типов: html, xhtml, rtf. Это заставит его работать в браузере
    • Заканчивать
    • OK

Теперь вы сможете выбрать шрифт в дизайнере и заставить его работать правильно, даже если шрифт не был установлен непосредственно в ОС вашего компьютера.

  1. Export the font
    • preferences -> Jaspersoft Studio -> Fonts
    • выберите шрифт и нажмите Экспорт
    • назовите файл jar, который будет создан
  2. Импортируйте шрифт в jasperserver

    • upload the jar file to the server into an empty directory
    • распакуйте банку с помощью unzip
    • отредактируйте файл fontsfamilynnnnn.xml, чтобы убедиться, что раздел <exportFonts> указан правильно: <exportFonts> <export key="net.sf.jasperreports.html">Open Sans</export> <export key="net.sf.jasperreports.xhtml">Open Sans</export> <export key="net.sf.jasperreports.rtf">Open Sans</export> </exportFonts>

    • объедините файл jasperreports_extension.properties с тем же файлом, который существует в /usr/local/tomcat/webapps/jasperserver/WEB-INF/classes/fonts/

    • скопируйте остальные файлы (каталог и файл XML) в каталог /usr/local/tomcat/webapps/jasperserver/WEB-INF/classes/fonts/
  3. перезапустить джасперсервер

Вот наиболее важные источники этой информации: http://community.jaspersoft.com/wiki/custom-font-font-extension https://mdahlman.wordpress.com/2010/04/16/fonts-in-jasperserver-3-7/

person async8192    schedule 05.05.2016