【问题标题】:I-Report 4.1.1 static text element issueI-Report 4.1.1 静态文本元素问题
【发布时间】:2011-12-20 01:33:13
【问题描述】:

大家好, 我在列带中使用静态文本元素。在该元素中,我将文本垂直对齐在元素的中心。当我导出 jrxml 文件时,我需要在 excel 文件中进行相同的对齐。但是我得到默认的水平对齐..请给我解决方案

【问题讨论】:

    标签: jasper-reports ireport


    【解决方案1】:

    你可以试试这个示例:

    <?xml version="1.0" encoding="UTF-8"?>
    <jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="test_excel_columns" language="groovy" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20">
        <property name="ireport.zoom" value="1.0"/>
        <property name="ireport.x" value="0"/>
        <property name="ireport.y" value="0"/>
        <queryString>
            <![CDATA[SELECT ID, FIRSTNAME, LASTNAME, STREET, CITY FROM ADDRESS]]>
        </queryString>
        <field name="ID" class="java.lang.Integer"/>
        <field name="FIRSTNAME" class="java.lang.String"/>
        <field name="LASTNAME" class="java.lang.String"/>
        <field name="STREET" class="java.lang.String"/>
        <field name="CITY" class="java.lang.String"/>
        <columnHeader>
            <band height="35" splitType="Stretch">
                <staticText>
                    <reportElement x="0" y="0" width="75" height="35"/>
                    <box>
                        <topPen lineWidth="1.0"/>
                        <leftPen lineWidth="1.0"/>
                        <bottomPen lineWidth="1.0"/>
                        <rightPen lineWidth="1.0"/>
                    </box>
                    <textElement textAlignment="Center" verticalAlignment="Middle"/>
                    <text><![CDATA[ID]]></text>
                </staticText>
                <staticText>
                    <reportElement x="75" y="0" width="271" height="35"/>
                    <box>
                        <topPen lineWidth="1.0"/>
                        <leftPen lineWidth="0.0"/>
                        <bottomPen lineWidth="1.0"/>
                        <rightPen lineWidth="1.0"/>
                    </box>
                    <textElement textAlignment="Center" verticalAlignment="Middle"/>
                    <text><![CDATA[Name]]></text>
                </staticText>
                <staticText>
                    <reportElement x="346" y="0" width="100" height="35"/>
                    <box>
                        <topPen lineWidth="1.0"/>
                        <leftPen lineWidth="0.0"/>
                        <bottomPen lineWidth="1.0"/>
                        <rightPen lineWidth="1.0"/>
                    </box>
                    <textElement textAlignment="Center" verticalAlignment="Middle"/>
                    <text><![CDATA[Street]]></text>
                </staticText>
                <staticText>
                    <reportElement x="446" y="0" width="100" height="35"/>
                    <box>
                        <topPen lineWidth="1.0"/>
                        <leftPen lineWidth="0.0"/>
                        <bottomPen lineWidth="1.0"/>
                        <rightPen lineWidth="1.0"/>
                    </box>
                    <textElement textAlignment="Center" verticalAlignment="Middle"/>
                    <text><![CDATA[City]]></text>
                </staticText>
            </band>
        </columnHeader>
        <detail>
            <band height="20" splitType="Stretch">
                <textField>
                    <reportElement x="0" y="0" width="75" height="20"/>
                    <textElement/>
                    <textFieldExpression><![CDATA[$F{ID}]]></textFieldExpression>
                </textField>
                <textField>
                    <reportElement x="75" y="0" width="271" height="20"/>
                    <textElement/>
                    <textFieldExpression><![CDATA[$F{FIRSTNAME} + " " + $F{LASTNAME}]]></textFieldExpression>
                </textField>
                <textField>
                    <reportElement x="346" y="0" width="100" height="20"/>
                    <textElement/>
                    <textFieldExpression><![CDATA[$F{STREET}]]></textFieldExpression>
                </textField>
                <textField>
                    <reportElement x="446" y="0" width="100" height="20"/>
                    <textElement/>
                    <textFieldExpression><![CDATA[$F{CITY}]]></textFieldExpression>
                </textField>
            </band>
        </detail>
    </jasperReport>
    

    Excel 预览中的输出为:

    我的iReport版本是4.1.3

    【讨论】:

    • 我已经在我的文本元素中添加了这个 textAlignment 和 verticalAlignment 但它不起作用
    • 你检查了iReport中的导出功能(通过预览功能)吗?
    • 是的,我做到了,预览窗口以所需格式向我显示所需的输出,但在导出到 excel 期间,输出会发生变化....
    • 将来我将使用 java 代码进行导出,但现在我正在从 Ireports 4.1.1 导出文件以创建所需的模板
    猜你喜欢
    • 1970-01-01
    • 2015-09-19
    • 1970-01-01
    • 1970-01-01
    • 2019-06-11
    • 2019-10-07
    • 2011-06-11
    • 2011-11-21
    • 1970-01-01
    相关资源
    最近更新 更多