Reflex iText Sample

機能説明 (5/5)

PNGファイル出力

Reflex iTextでは、グラフとQRコードをPNGファイルで出力できます。

PNGファイル出力方法

  • テンプレートには、xml定義と、グラフのタグまたはQRコードのタグ1個のみ記述します。 タグの定義方法は以下の2種類です。
    • <div class="_[タグ名]" style="[属性]:[値]; [属性]:[値]; ・・・">
    • <[タグ名] [属性]=[値] [属性]=[値] ・・・>
  • エンティティの定義は、PDFの場合と同じです。

グラフのPNGファイル出力サンプル

  • テンプレート (piechartpngsample.xml)
    <?xml version="1.0" encoding="UTF-8" ?>
    <piechart
        title="世界の人口(単位:億人)"
        legend="true"
        width="150"
        height="180"
        category="country"
        value="population" />
    
    
  • エンティティは機能説明4 PopulationList.java、PopulationInfo.java を使用。XMLの場合populationlist.xml、JSONの場合populationlist.jsonを使用。
  • Reflex iText 実行結果
    PiechartPngSample実行結果

QRコードのPNGファイル出力サンプル

  • テンプレート (qrcodepngsample.xml)
    <?xml version="1.0" encoding="UTF-8" ?>
    <qrcode
        value="$qrCodeValue"
        width="20"
        height="20"
        version="10"
        errorcorrectionlevel="L"
        cellsize="4"
        margin="32" />
    
    
  • エンティティは機能説明2 QRCcode.java を使用。XMLの場合qrcode.xml、JSONの場合qrcode.jsonを使用。
  • Reflex iText 実行結果
    QRCodePngSample実行結果

PDF合成

Reflex iTextでは、テンプレートとなるPDFファイルを指定することができます。

デザインをPDFファイルで作成し、変動するデータをエンティティで指定、データの配置をテンプレートで指定する といった使い方ができます。

PDF合成の注意点

  • テンプレートPDFと、テンプレートのHTMLファイルに指定する、「用紙サイズ」「用紙の向き」を同一にしてください。 異なる場合レイアウトが崩れます。
  • フッターを付加する場合、テンプレートPDF・テンプレートHTMLのどちらにもフッターを付加してください。 どちらかにフッターがあり、どちらかにフッターがない場合、レイアウトが崩れます。
  • テンプレートPDFに署名や暗号化している場合、それらの情報は無くなります。
  • テンプレートPDFにパスワードを指定していると、文書が開けないためエラーとなります。
  • 生成するPDFに署名をする場合、署名フィールドを指定するとエラーになります。 署名フィールドがない(不可視署名の)場合は問題ありません。
  • テンプレートHTMLにアンカーを指定した場合、無効となります。

PDF合成出力サンプル

  • テンプレート (helloworld_B5_landscape.html)
    <?xml version="1.0" encoding="UTF-8" ?>
    <html>
    <head>
    </head>
    <body>
    
    <div class="_page" style="pagesize:B5; orientation:landscape;">
        <table>
            <tr>
                <td>
                    <a href="http://reflex.sourceforge.jp/index.html">
                        <span id="greeting" size="18" style="style:underline; color:#0000FF;" />
                    </a>
                </td>
            </tr>
        </table>
    </div>
    
    </body>
    </html>
    
    
  • エンティティは基本説明1 HelloWorld.java を使用。XMLの場合helloworld.xml、JSONの場合helloworld.jsonを使用。
  • テンプレートPDF (RectangleSample.pdf)
    テンプレートPDF
  • サンプル実行
  • Reflex iText 実行結果
    PDF合成実行結果

前へ << >> 次へ