Как я могу отобразить "$£Ω€απ⅔ " в JASPERSERVER PDF с помощью iReport?

Я жестко закодировал текстовое поле со значением

 ":$£Ω€απ⅔:" 

чтобы проверить, будут ли эти символы отображаться в PDF

но он печатает только как

:$£€:

Я попытался изменить шрифт на "символ", но это не делает трюк.

Примечание: я использую iReport 5.5

3 ответов


Я пробовал ваших персонажей с помощью font-extensions в iReport, это шаги, которые я сделал

  1. загрузите (или используйте один на своем ПК) нужный шрифт ttf (он должен поддерживать символы), я использовал дежавю-засечек.
  2. установить шрифт в iReport или Jasper soft studio (нажмите ссылки, чтобы понять, как)

    • я использовал iReport 5.6 и установил PDF-документа-кодировка: Отличии Друг От Друга-Час (unicode с горизонтальной записью) и встроенным шрифтом в pdf. Это был код моего текстового поля

      <textField>
          <reportElement x="8" y="15" width="100" height="20" uuid="41dc1200-091f-4799-a1d2-4622f88a0e84"/>
          <textElement>
              <font fontName="DejaVu Serif" size="13"/>
          </textElement>
          <textFieldExpression><![CDATA[":$£Ω€απ⅔:"]]></textFieldExpression>
      </textField>
      
  3. экспорт расширения шрифта (это создает .jar)

  4. добавить Jar в ваш classpath.
  5. экспорт в pdf и наслаждаться результатом.

Result

Это пример того, как использовать произвольный шрифт, если хочешь использовать DejaVu Sans или DejaVu Serif вы можете просто включить яшма библиотека шрифтов отчетов в classpath, следовательно, эти шрифты уже включены и сопоставлены в библиотеке


JRDesignStyle normalStyle = new JRDesignStyle();
        normalStyle.setName("tahoma");
        normalStyle.setDefault(true);
        normalStyle.setFontName("../tahoma_0.ttf");
        normalStyle.setPdfFontName("../tahoma_0.ttf");
        normalStyle.setPdfEncoding("Identity-H");
        normalStyle.setPdfEmbedded(true);
        .
        .
        jasperPrint.addStyle(normalStyle);

Я опубликовал аналогичный вопрос, и вышеуказанная техника решила мою проблему, пока в один прекрасный день я не перезапустил контекст JasperServer. Теперь я получал ошибку "кодировка PDF не найдена", когда пытался экспортировать отчет в pdf.

чтобы решить эту проблему, мне пришлось скопировать iText-Asian.jar и расширение шрифта.jar в папке lib контекста jasperserver. "jasperserver / WEB-INF/lib". После этого перезапустите контекст и проблема решена.

надеюсь, это поможет кто-то.