2017-05-05 6 views
2

JasperReports 4.6.0과 JDK 1.6을 사용하여 .docx 보고서를 생성하고 있습니다.docx에서 "높이 지정"속성을 비활성화하는 방법은 무엇입니까?

Jasper는 기본적으로 모든 구성 요소 (예 : TextField)가 하나의 행을 차지하는 하나의 열 테이블 형식으로 보고서를 생성합니다. 현재 상황에서 직면하고있는 문제는 출력 보고서를 편집하고 일부 textField에 수동으로 새 행을 추가 할 때마다 테이블 행을 넓혀 (즉, 클릭 및 슬라이드) 주어진 textField 높이를 넓혀야한다는 것입니다. .

이 작업은 지루한 작업입니다. 그래서 캐주얼 MS 워드 테이블의 속성을 살펴했고 나는라는 속성 "높이 지정"

![Example] 내 재스퍼 출력 보고서에 기본적으로 사용하도록 설정되어 1

을 발견했습니다. 사용 중지 된 경우 CR을 간단히 추가 할 수 있으며 그 아래의 모든 행도 이동할 수 있습니다. 즉, 자바 또는 jrxml에서 내 재 스퍼에서이 속성을 사용하지 않도록 설정하려고합니다. 여기

내 jrxml입니다 :

<?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="profile_report" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="0" bottomMargin="0" uuid="40a9d14e-f38a-4588-b1d3-216588ae5e9a"> 
    <property name="ireport.zoom" value="1.0"/> 
    <property name="ireport.x" value="0"/> 
    <property name="ireport.y" value="0"/> 
    <style name="backgroundStyle" mode="Opaque" backcolor="#009AB7" forecolor="#FFFFFF"/> 


    <parameter name="experience" class="java.lang.String"/> 

    <parameter name="skills" class="java.lang.String"/> 
    <parameter name="skillsDataSource" class="java.util.List"/> 
    <parameter name="subreport_mainCat_parameter" class="net.sf.jasperreports.engine.JasperReport"/> 
    <parameter name="subreport_subCat_parameter" class="net.sf.jasperreports.engine.JasperReport"/> 
    <parameter name="subreport_skill_parameter" class="net.sf.jasperreports.engine.JasperReport"/> 

    <detail> 
     <band height="50"> 

      <textField isStretchWithOverflow="true"> 
       <reportElement positionType = "Float" x="50" y="0" width="455" height="20" uuid="ce308940-e950-4d33-97b9-47d6fb10ee08"/> 
       <textElement> 
        <font size="10" /> 
        <paragraph lineSpacingSize="0"/> 
       </textElement> 
       <textFieldExpression><![CDATA[$P{experience}]]></textFieldExpression> 
      </textField> 

      <textField> 
       <reportElement positionType = "Float" style="backgroundStyle" x="50" y="22" width="455" height="20" uuid="ce308940-e950-4d33-97b9-47d6fb11ee08"/> 
       <textElement> 
        <font fontName="Calibri" size="12" /> 
        <paragraph lineSpacingSize="0"/> 
       </textElement> 
       <textFieldExpression><![CDATA[$P{skills}]]></textFieldExpression> 
      </textField> 

      <subreport> 
       <reportElement positionType = "Float" x = "50" y = "44" width = "455" height = "3" isRemoveLineWhenBlank = "true" backcolor = "#99ccff"/> 
       <subreportParameter name="subreport_subCat_parameter"> 
        <subreportParameterExpression><![CDATA[$P{subreport_subCat_parameter}]]></subreportParameterExpression> 
       </subreportParameter> 
       <subreportParameter name="subreport_skill_parameter"> 
        <subreportParameterExpression><![CDATA[$P{subreport_skill_parameter}]]></subreportParameterExpression> 
       </subreportParameter> 
       <dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($P{skillsDataSource})]]></dataSourceExpression> 
       <subreportExpression class="net.sf.jasperreports.engine.JasperReport"><![CDATA[$P{subreport_mainCat_parameter}]]></subreportExpression> 
      </subreport> 
     </band> 
    </detail> 

</jasperReport> 

답변

2

해제 재산 "높이 지정"을, 당신이 재산을

net.sf.jasperreports.export.docx.flexible.row.height=true을 설정해야합니다, 그것은 기본적하기 false

jrxml

<?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="report4" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="afeb1e80-f428-4ec0-930e-64d32f4d7e57"> 
    <property name="net.sf.jasperreports.export.docx.flexible.row.height" value="true"/> 
.... 
</jasperReport> 

IDE (재스퍼 소프트 스튜디오)

01 23,516,
속성 탭 고급으로 전환 당신이

Finding the properties

이것은 대화 상자가 열립니다 속성 속성을 선택하면 아웃 라인에서의

선택 보고서, 표시 버튼을 클릭을 눌러 '추가 "하고 속성을 삽입

Add property

,