Как создать редактируемые поля PDF в отчете Jasper

#jasper-reports #ireport

#jasper-отчеты #ireport

Вопрос:

Есть ли способ экспортировать отчет Jasper в формате PDF, где указанные поля можно оставить редактируемыми? Я использую iReport для разработки шаблонов отчетов.

Комментарии:

1. Насколько я знаю, это невозможно….

Ответ №1:

Редактируемые входные данные возможны в более новых версиях JasperReports .

Пример:

 <reportElement positionType="Float" mode="Opaque" x="250" y="0" width="200" height="50">
  <property name="net.sf.jasperreports.export.pdf.field.type" value="Text"/>
  <property name="net.sf.jasperreports.export.pdf.field.text.multiline" value="true"/>
  <property name="net.sf.jasperreports.print.keep.full.text" value="true"/>
  <propertyExpression name="net.sf.jasperreports.export.pdf.field.value">"Thisnis a multinline text inside a single line text field."</propertyExpression>
</reportElement>
  

Документация:

http://jasperreports.sourceforge.net/sample.reference/forms/index.html

Ответ №2:

Сегодня это невозможно. Это необычное требование, но оно не является необоснованным. На самом деле это не ограничение iReport, а скорее ограничение JasperReports. Если кто-нибудь, кто в будущем обратится к этому сообщению, захочет иметь эту функцию, лучшее, что можно сделать, это зарегистрировать ее в Jaspersoft bug tracker.

Комментарии:

1. Мой ответ был полезен при написании (более 9 лет назад!). Но ответ @yglodt теперь лучше. Если Эрик Гидрик рядом, он должен переключиться на принятие нового ответа.

Ответ №3:

Два факта:

  1. iText может это сделать. http://www.geek-tutorials.com/java/itext/itext_acroform_javascript.php#code2src

  2. В JasperReports используется iText.

Теоретически JR может это сделать, но я не нахожу методов в javadoc, которые использовали бы параметры.

Может быть, кто-нибудь знает?

Ответ №4:

Нет, вы не можете, но технически это не невозможно. AFAIK, редактируемое поле PDF специфично для самого формата PDF, JasperReport API предназначен для создания только элементов commons в основных форматах файлов, таких как текст, таблицы, фигуры, изображения… Лучший способ узнать подсказку — попробовать ввести текст в формате html, вы знаете, что в jrxml могут быть элементы html. PDF также поддерживает HTML-элементы, не так ли?

Комментарии:

1. Интересная идея, но использование тега <html> приводит к ошибкам при попытке просмотра отчета в режиме конструктора.

Ответ №5:

Добавлена «net.sf.jasperreports.export.text.isInputForm» для переключения текстового поля и статического текстового компонента в текстовые поля формы pdf. Просто установите этому свойству значение «true» для статического текста или текстового поля. Исправление заключается просто в использовании формы itext в jasperreports.

https://github.com/ozawa-hi/jasperreports/tree/input_text