Я пытаюсь сделать свои доклады работать с переводами. Неважно, что я пытаюсь, я не могу представлять UTF-8 для любого языка - я просто получаю два сломанных персонажа для каждого персонажа UTF-8.
Мой отчет начинается с этого: XML версия = «1.0» кодировка = «UTF-8»?>
... Но предварительный просмотр IReport не работает,
и мой фактический код имеет это:
JRProperties.setProperty("net.sf.jasperreports.default.pdf.encoding", "UTF-8");
exporter.setParameter(JRExporterParameter.CHARACTER_ENCODING, "UTF-8")
ни один, кажется, не сможет выводить UTF-8. Что может быть здесь? Я вытащил мои волосы. Даже с шрифтом, установленным на Arial
, у меня проблемы. Мое веб-приложение использует один и тот же шрифт и аналогичные расслоения с Grails, и у меня нет проблем, поэтому что-то происходит специфично для JasperReports.
Редактировать: Я думал, что маркеры заказа байтов, возможно, были проблема, но это не так. Я создал базовый отчет, который показывает сбой в 4.0.2.
Вот разбор ресурсов:
и выходные данные в IReport:
и вот отчет , а также файл , используемый для наблюдения за этими результатами.
Норная информация: Когда файлы свойств сохраняются в кодировке ANSI, я могу получить все немецкие символы, включая Ä и ß. Когда файлы свойств сохраняются как UTF-8, работают только символы ASCII.