Теги html, не отображаемые в отчете jasper [duplicate]

Другим случаем, когда это может произойти, является то, что ваши данные были неправильно записаны в ваш csv, чтобы каждая строка заканчивалась запятой. Это приведет к тому, что вы останетесь с неузнанным столбцом Unnamed: x в конце ваших данных, когда вы попытаетесь прочитать его в df.

18
задан davioooh 7 May 2013 в 16:23
поделиться

1 ответ

Да, вы можете применить стиль для элементов textField .

iReport с использованием

Образец шаблона отчета:

<jasperReport ..>
    <style name="ColoredField" style="Default" forecolor="#FF0000">
        <conditionalStyle>
            <style/>
        </conditionalStyle>
    </style>
    ...
    <detail>
        <band height="52" splitType="Stretch">
            <!--Using the style declared in this template-->
            <textField>
                <reportElement key="textWithStyle" style="ColoredField" mode="Opaque" x="0" y="10" width="100" height="20"/>
                <textElement/>
                <textFieldExpression><![CDATA[$F{TASKS_SERIES}]]></textFieldExpression>
            </textField>
            <!--Basic formatting (set font and indent) using-->
            <textField>
                <reportElement key="textWithoutStyle" x="100" y="10" width="100" height="20"/>
                <textElement>
                    <font fontName="Arial" size="14" isBold="true" isItalic="true" isUnderline="false"/>
                    <paragraph leftIndent="10"/>
                </textElement>
                <textFieldExpression><![CDATA[$F{TASKS_TASK}]]></textFieldExpression>
            </textField>
            <!--Markup using: styled-->
            <textField>
                <reportElement x="200" y="10" width="590" height="42"/>
                <textElement markup="styled"/>
                <textFieldExpression><![CDATA["The static text without any format.\nThe field's data with bold format<style isBold='true'>:" + $F{TASKS_SUBTASK} + "</style>\n<style isBold='true' isItalic='true' isUnderline='true'>The static underlined text with bold and italic format</style>"]]></textFieldExpression>
            </textField>
        </band>
    </detail>
</jasperReport>

Цитата из iReport Ultimate Guide о атрибуте markup:

Этот атрибут Markup позволяет отформатировать текст с использованием определенного языка разметки. Это очень полезно, когда вам нужно распечатать текст, предварительно отформатированный, то есть в HTML или RTF. Простые теги HTML-стиля (например, для жирного шрифта и для курсива) можно использовать, например, для выделения определенного фрагмента текста. Возможные значения следующие:

  • Нет Никакой обработки текста не выполняется, и текст печатается точно так, как это предусмотрено.
  • Styled Эта разметка способна форматировать текст с помощью набора HTML-подобных тегов, и он довольно популярен в средах Java. Он позволяет установить конкретный шрифт для фрагментов текста, цвета, фона, стиля и т. Д. Это часто бывает достаточно, чтобы программно отформатировать текст.
  • HTML. Если вы хотите напечатать некоторый текст HTML в своем отчете, это то, что вам нужно, но основное предназначение - форматировать текст, поэтому не ожидайте, что сможете печатать таблицы или добавлять изображения.
  • RTF Установка разметки на это значение, контент будет интерпретироваться как RTF-код. RTF - популярный формат документа, хранящийся в чистом тексте. Маленькая часть текста, в котором говорится: «Это текст, отформатированный в RTF» в иллюстрации 19, был сгенерирован с использованием строки: {\rtf1 \ ansi \ ansicpg1252 \ deff0 \ deflang1033 {\ fonttbl {\ f0 \ fswiss \ fcharset0 Arial;} { \ f1 \ fnil \ fprq2 \ fcharset0 Swift;}} {* \ generator Msftedit 5.41.15.1507;} \ viewkind4 \ uc1 \ pard \ f0 \ fs20 Это текст \ f1 \ fs52 в формате \ f0 \ fs20 в формате RTF \ par} Строка на самом деле является файлом RTF, созданным с использованием простого текстового процессора.
  • Шрифт отчета Это имя предустановленного шрифта, из которого будут взяты все свойства символа. Этот атрибут устарел, и он существует только по соображениям совместимости (вот почему это метка структурирована. Чтобы определить конкретный стиль текста для использования по всему вашему документу, используйте стиль.
  • Здесь используется выборка markup .

    Вы можете использовать style для установки:
  • Общие свойства
  • Свойства графики
  • Свойства границы и заполнения
  • Свойства текста Другой пример - здесь .

    API DynamicJasper с использованием

    В случае использования API DynamicJasper вы можете установить стиль с помощью ar.com.fdvs.dj.domain.builders.ColumnBuilder класс:
    AbstractColumn columnState = ColumnBuilder.getNew()
    .addColumnProperty("state", String.class.getName())
    .addTitle("State").addWidth(new Integer(85))
    .addStyle(detailStyle).addHeaderStyle(headerStyle).build(); 
    
    Образец - здесь .

    API JasperReports с помощью

    В случае использования API JasperReports вы можете установить стиль, например, с помощью net.sf.jasperreports.engine.base .JRBasePrintText :
    JRPrintText text = new JRBasePrintText(jasperPrint.getDefaultStyleProvider());
    text.setStyle(boldStyle);
    
    Образец здесь .
  • 36
    ответ дан Alex K 18 August 2018 в 01:48
    поделиться
    • 1
      Я спросил о встроенном стиле, который возможен с помощью markup = style. Нужно просто быть осторожным, чтобы объединить строки стиля с динамическими элементами, такими как «& lt; font face =« Arial Black »& gt; & quot; + $ P {param} + "& lt; / font & gt ;. Обновите свой ответ. – ipavlic 15 November 2011 в 15:32
    • 2
      @ipavlic Спасибо за ваше замечание. Я только что добавил информацию об использовании markup. еще раз спасибо – Alex K 15 November 2011 в 16:23
    • 3
      Я принял ваш ответ теперь, когда он включает в себя встроенные параметры стиля, о которых я изначально спрашивал. Спасибо! – ipavlic 15 November 2011 в 16:53
    • 4
      Почему subreport не будет использовать данный стиль? и т. д. <reportElement style="Calibri" ... не работает. – zygimantus 6 October 2016 в 13:58
    • 5
      Вы добавили стиль в подзаголовок? – Alex K 6 October 2016 в 14:09
    Другие вопросы по тегам:

    Похожие вопросы: