マニュアル一覧PDFで読む

Pure Python 帳票デザイナー 操作ガイド

Pure Python版の帳票デザイナーは、ブラウザを開かず、パソコン上で帳票定義をじっくり編集するためのデスクトップツールです。作成した帳票定義は共通形式なので、Pure Python版だけでなく、Reports Webの各エンジンへそのまま渡せます。

Pure Python 帳票デザイナーの実画面

はじめに:サンプルの見た目を変えてみるRM001

Windowsでは、Pure-Pythonフォルダーの Tools/Windows/Designer/ReportsPythonDesigner.exe を開きます。デザイナー単体の起動にはPythonのインストールは不要です。macOS・Linuxの起動方法は、同じ Tools 内の各OSのREADMEをご覧ください。

  1. 「開く」で、samples/01.あっという間に帳票出力/definition/quick-report.prepdj を選びます。
  2. タイトルの文字を選び、右側のプロパティで文字サイズを変更します。元に戻す/やり直すも試せます。
  3. 「名前を付けて保存」で、元ファイルとは別の .prepdj に保存します。
  4. 保存したファイルを開き直し、「プレビュー」で配置や文字サイズを確かめます。

この帳票のTitle・CustomerNameは、01のPythonプログラムから文字を渡す項目です。まずは項目名を変えず、文字サイズや配置を変えると、デザインとプログラムのつながりを試しやすくなります。プログラムから出力する文字の変更は、01のREADMEを参照してください。

1. 画面の見方RM002

ウィンドウ幅やペイン幅に応じて、配置ツールは左側から上側へ移動します。左右の境界はドラッグして作業しやすい広さへ調整できます。

2. 帳票を作るRM003

  1. 「新規」を押します。
  2. 文字、線、四角形、楕円、画像、バーコードのいずれかを選びます。
  3. 帳票上をドラッグして配置します。
  4. 右側のプロパティで内容、位置、寸法、色、線、フォント、データ項目などを設定します。
  5. 「保存」または「名前を付けて保存」で .prepdj に保存します。

標準の帳票定義はJSON形式の .prepdj です。既存の .prepd、および種類を明示した .json / .xml も開けます。帳票印刷データの .prepe / .prepej はデザイナーで開く定義ファイルではありません。

3. 開く・ドラッグ&ドロップ・保存し直すRM004

共通 PREPDJ から開いた帳票も .prepd に保存できます。物体名と異なるデータ項目名は旧形式に残らないため、そのときは確認します。旧形式に書けない項目があれば保存を断ります。mm と px の帳票の間でも貼り付けて保存でき、座標は貼り付け先の単位に直します。画像ファイルを選ぶと画像を埋め込みます。

帳票定義は「開く」から選べるほか、エクスプローラー等からデザイナーのウィンドウへ1ファイルをドラッグ&ドロップして開けます。対応する拡張子は .prepd、.prepdj、.xml、.json です。

開いた後に「名前を付けて保存」を選べば、元のファイルを残して別名の .prepdj を作れます。保存したファイルをもう一度「開く」またはドラッグ&ドロップし、配置とプロパティが保たれていることを確認できます。読込に失敗したときは、編集中の帳票を置き換えません。

装飾文字(ArtText)は表示・編集せず、読み込み時にお知らせします。元の内容を保持し、共通 JSON にも保存します。WPF 版では作成・描画できます。

4. オブジェクトを編集するRM005

左右・上下の整列は、選択した物体のいちばん外側の端に揃えます。横中央は最も上(同じなら最も左)の物体、縦中央は最も左(同じなら最も上)の物体を基準にします。選択順には依存しません。

文字は文字列、データ項目、フォント、サイズ、太字・斜体・下線、縦横の位置、色を設定できます。図形では線色・線幅・塗りつぶし・網掛けを、画像では画像ファイルと表示方法(クリップは画像を縮めずに、1 ピクセルを 1/96 インチとして置きます。枠からはみ出した部分も描かれます。)を、バーコードでは種類・値・文字表示などを設定できます。

プロパティ上部の検索欄は、日本語の表示名と内部名の両方を探せます。長い一覧から目的の設定だけを絞り込むときに便利です。

帳票全体の設定と、新しく置くオブジェクトの既定値RM006

帳票プロパティでは、用紙、背景画像、設計色、既定の線幅・線種、繰返しの補助表示などを変更できます。

文字・画像の見た目を調整するRM007

文字の均等割り付けでは、半角英数字・半角カナを対象にするか、割り付けから除く文字、末尾の空白数を指定できます。伸縮文字とは異なり、文字の形ではなく文字間隔を調整します。

文字や画像の枠は、線幅・線種・一重/二重を設定できます。文字の塗りつぶし、下線・取消線などは、伸縮や縦書きでも使用できます。PDF専用の折返し・切取り・フォント設定はPDF出力にだけ適用され、通常のプレビュー設定とは分かれています。PDFの自動折返しは半角1・全角2で数えた字数で折り返し、縦はみ出しカットは高さだけを切ります(横へははみ出します)。

変更後は「元に戻す」「やり直す」で確認でき、保存した定義を開き直しても設定が保たれます。バーコードの詳細項目は種類ごとに異なるため、使用する種類を選んでから添字フォント・バー調整・二次元コードの詳細を設定してください。

文字列オブジェクト:伸縮文字RM008

伸縮文字は、文字列の形をオブジェクトの幅・高さに合わせて伸ばしたり縮めたりする機能です。文字間隔を広げる「均等割り付け」や、文字に効果を付ける「装飾文字」とは異なります。長い文字列を縮めるだけでなく、短い文字列を拡大する場合もあります。

設定 初期値 意味
伸縮自在 しない 「する」のときに、以下の条件に従って伸縮します。
指定桁超え伸縮 0 指定した文字数を超えたときだけ伸縮します。0は文字数による制限なしです。
指定バイト数超え伸縮 0 Shift_JISで数えたバイト数を超えたときだけ伸縮します。0はバイト数による制限なしです。
フォント高さ固定 しない 「する」なら設定フォントの高さを基準に保ち、横幅を伸縮します。「しない」なら幅・高さの両方を枠に合わせます。

文字数とバイト数は、どちらか一方を選んで指定します。デザイナーで一方に正の値を設定すると、もう一方は0に戻ります。両方が0なら、空でない文字列は長さにかかわらず伸縮します。「伸縮自在」が「しない」なら、しきい値を設定しても伸縮しません。

例:文字数を10にした場合、10文字までは通常の文字として描画し、11文字から伸縮します。文字数は全角・半角を区別せず数えます。ただしUTF-16の単位で数えるため、一部の絵文字などは2として数えます。

例:バイト数を10にした場合、半角英数字は通常1バイト、漢字・ひらがなは通常2バイトです。あいうえお は10バイトなので通常描画、あいうえおA は11バイトなので伸縮します。UTF-8のバイト数ではありません。Shift_JISで表せない文字は文字コード変換の代替処理が入るため、この例と同じ数え方とは限りません。

条件に達しない文字列は、通常のフォント・配置設定で描画します。空文字は描画しません。空白や改行を取り除いてから数える仕様ではありません。

フォント高さ固定時は、縦位置の上・中央・下の設定で配置します。固定する高さより枠が小さい場合に、高さまで自動的に縮める機能ではないため、十分な高さを確保してください。「伸縮自在」と「均等割り付け」は同時に有効にできず、後から有効にした方を使用します。

Pure Python版の対応状況:上記の文字数・バイト数による条件付き伸縮は、デザイナーで設定できます。縦書きとの組合せや特殊文字の装飾まで、すべての条件を確認したものではありません。

5. コピー・整列・履歴RM009

切り取り、コピー、貼り付け、元に戻す、やり直しに対応しています。貼り付けたオブジェクトには重複しない名前と位置のずれが付きます。別のデザイナープロセスへ貼り付けることもできます。

複数選択すると、左右・上下の整列、同じ幅や高さ、最大・最小サイズ、前面・背面への移動を利用できます。

6. 表示を整えるRM010

下部の倍率から25%、50%、75%、100%、150%、200%、幅に合わせる、全体表示を選べます。アイコンは16pxと32pxを切り替えられます。グリッド表示とグリッドへの吸着は帳票プロパティで設定します。

7. プレビューして確かめるRM011

「プレビュー」を押すと、未保存の編集中内容から独立したPure Pythonプレビュアーを開きます。保存してから確認し直す必要はありません。プレビュアーではページ移動、倍率変更、検索、PDF・SVG・PNG保存、印刷を利用できます。

8. 未保存時と診断RM012

変更を残したまま閉じる場合は、保存・破棄・キャンセルを選べます。「ヘルプ」には操作説明、「Reports Web Python Designer について」(版を表示)、読込診断があります。読込診断は、保持した情報と現在の描画への適用状況を確認するためのものです。

9. 主なショートカットRM013

macOSでは Ctrl の代わりに ⌘(Command)を使います。やり直すは ⌘⇧Z です。

10. 対応範囲RM014

このガイドは現行Pure Pythonデザイナーの実装に基づきます。プレビュアーの詳しい操作は Pure Python プレビュアー操作ガイド、Pythonプログラムからの読込・出力は Pure Python プログラマーズガイド を参照してください。