2011-08-25 12 views
10

JasperReports + iReportで作成されたレポートのすべての詳細と列見出しをカプセル化する境界線が必要です。しかし、欄や見出し、欄のフッタの両方にある矩形や枠を描こうとすると、要素の位置が無効であるというエラーが表示されます。列ヘッダー、フッター、およびディテールセクションの両方に境界線を描画する方法は?

私は1つのオプションはイメージを使用することだと思います(CSSなしの古いHTMLのように)...しかし、フィールドがオーバーフローしたり、セクションの高さや幅を変更した場合はPITAになります、画像を変更する必要があります...

他の代替手段はありますか?

ありがとうございました。

答えて

10

これを行うには、フレームを各バンドに配置し、バンドを完全に埋めるようにサイズを設定します。次に、3つのバンドの周りに枠線を複製するように、フレームの枠線を設定します。ヘッダーには、左上と右端に境界があります。フッターには、左下と右下があります。詳細バンドは左右にのみ境界線を持っています。以下のサンプルコードを参照してください。

<columnHeader> 
    <band height="61" splitType="Stretch"> 
     <frame> 
      <reportElement x="0" y="0" width="555" height="61"/> 
      <box> 
       <topPen lineWidth="2.0" lineStyle="Solid"/> 
       <leftPen lineWidth="2.0" lineStyle="Solid"/> 
       <rightPen lineWidth="2.0" lineStyle="Solid"/> 
      </box> 
     </frame> 
    </band> 
</columnHeader> 
<detail> 
    <band height="125" splitType="Stretch"> 
     <frame> 
      <reportElement x="0" y="0" width="555" height="125"/> 
      <box> 
       <leftPen lineWidth="2.0" lineStyle="Solid"/> 
       <rightPen lineWidth="2.0" lineStyle="Solid"/> 
      </box> 
     </frame> 
    </band> 
</detail> 
<columnFooter> 
    <band height="45" splitType="Stretch"> 
     <frame> 
      <reportElement x="0" y="0" width="555" height="45"/> 
      <box> 
       <leftPen lineWidth="2.0" lineStyle="Solid"/> 
       <bottomPen lineWidth="2.0" lineStyle="Solid"/> 
       <rightPen lineWidth="2.0" lineStyle="Solid"/> 
      </box> 
     </frame> 
    </band> 
</columnFooter> 

結果は次のようになります。 Screenshot from iReport

+0

また、isFloatColumnFooterを使用する必要があります。そうしないと、詳細フッタとカラムフッタの間に隙間ができます。 '' –

0

あなたがその目的のために四角形を描画した上でのバックグラウンドバンドを使用することができます。

0

フレームまたは長方形の背景バンドを使用すると効果的ですが、最初と後のページに異なるヘッダー要素がある場合、フレーム/長方形のサイズ変更は少し難しいことがあります。

片方向の丸めで、任意のタイトル、ヘッダー、フッターの各バンドにフレーム/矩形を追加します。 はOpaque/Whiteで、Backに送信されます。これにより、背景画像が不明瞭になります。

これは、詳細バンドのためだけに表示されることを意味します。ヘッダーとフッターフレームには、必要なものに応じてボトム/上部の境界線が必要な場合があります。

(私は、詳細なバンドの枠を横の枠で使用した場合の問題は、繰り返しの細部のバンドが各ページを埋めることがないため、まったく機能しないことが分かりました。

0
  1. ジャスパーレポートをクリックします。
  2. 基本要素に移動します。
  3. 長方形を選択します。
関連する問題