6

Я кусок HTML хранится в базе данных, как:отступов в сгенерированном PDF с помощью JasperReports

<ul> 
<li>Pretend you're talking to a busy colleague and have to sum up your entire question in one sentence: what details can you include that will help someone identify and solve your problem?</li> 
<li>Spelling, grammar and punctuation are important! Remember, this is the first part of your question others will see - you want to make a good impression. If you're not comfortable writing in English, ask a friend to proof-read it for you. </li> 
<li>If you're having trouble summarizing the problem, write the title last - sometimes writing the rest of the question first can make it easier to describe the problem.&nbsp;</li> 
</ul> 

Я отображаюсь этот кусок HTML в PDF с помощью текстового поля JasperReports, выше HTML должны отображаться как это в сгенерированном PDF.

  • Притворись вы разговариваете с занятой коллегой и должен суммировать весь вопрос в одном предложении: какие детали вы можете включать в себя, что поможет кому-то идентифицировать и решить проблему?
  • Правописание, грамматика и знаки препинания важны! Помните, что это первая часть вашего вопроса, которую другие увидят - вы хотите произвести хорошее впечатление. Если вам не нравится писать по-английски, попросите друга подтвердить это для вас.
  • Если у вас возникли проблемы с суммированием проблемы, напишите заголовок последним - иногда сначала пишется остальная часть вопроса, что упрощает описание проблемы.  
Но этот HTML показывает, как:

enter image description here

jrxml:

<textField isStretchWithOverflow="true" isBlankWhenNull="true"> 
       <reportElement uuid="9206a8ee-5451-4b88-b1f4-1f3889049e57" positionType="Float" x="7" y="47" width="501" height="15" isRemoveLineWhenBlank="true" forecolor="#283234"/> 
       <textElement markup="html"> 
        <font size="10"/> 
       </textElement> 
       <textFieldExpression><![CDATA[$F{description}]]></textFieldExpression> 
</textField> 

HTML является Feeded в описании переменной.

Любая идея, как я могу выровнять текст?

+0

[Как добавить отступ в списке пули] (https://stackoverflow.com/questions/47225881/how-to-add-indentation-on-bullet-list) –

ответ

8

Мое решение показывает равную JRXML, которая является желаемым результатом независимо от инструментов, которыми пользуется, например. iReport GUI, динамические отчеты или java-код для разработки отчетов Jasper.

Сначала определяют стиль, который корректирует отступы вытягивать в первой строке несколько пикселей влево и выталкивает весь ящик такой же ширины вправо:

<style name="hanging-indentation-style"> 
    <box leftPadding="23"/> 
    <paragraph firstLineIndent="-23"/> 
</style> 

Во-вторых, этот стиль применяется к reportElement из textField:

<textField isStretchWithOverflow="true" isBlankWhenNull="true"> 
    <reportElement style="hanging-indentation-style" positionType="Float" mode="Transparent" x="0" y="0" width="555" height="20" isRemoveLineWhenBlank="true"/> 
    <textElement markup="html"/> 
    <textFieldExpression class="java.lang.String"><![CDATA[$F{description}]]></textFieldExpression> 
</textField> 

в зависимости от размера шрифта вы можете изменять значение стилей в соответствии с вашими потребностями.

Я приспособил вход с Aligning Bullets in Jasper Reports, где используется динамические отчеты апи, и Jasper Report HTML bullet hanging indent, где показано, через графический интерфейс, который не был возможен в моем случае с помощью IReport Designer 4.5.1, потому что нет возможности применить отступы непосредственно на textField.

+0

Если мы что-то делаем, как вы предположили, что означает, что в jasperreports нет значения ul/li. – Abs

+1

[Отчеты Jasper могут интерпретировать фрагменты html] (http://jasperreports.sourceforge.net/sample.reference/markup/) вместе с другими типами разметки, и они анализируются во внутренней структуре. Результат оформлен по умолчанию. В вашем случае стиль списка по умолчанию не имеет висячего отступа и поэтому нуждается в пользовательских стилях для достижения желаемого результата. –

 Смежные вопросы

  • Нет связанных вопросов^_^