Delphi Programming / Object Pascal
サイトのトップページへ リンクのページへ ロゴマーク
[掲載 2001年02月23日] [更新 2016年04月28日] タックシール印刷コンポーネント
タックシール印刷コンポーネント
用紙・ラベル寸法・印刷関係のプロパティ
動作確認等 図は Windows 7 U64(SP1) + Delphi XE(UP1) Pro で作成





凡例  published
 public
 ReadOnly



用紙サイズ等の値と印刷オフセット


用紙サイズ等のプロパティや印刷オフセット関係のプロパティは,印刷プレビュー制御コンポーネント TplPrev と同じです. このタックシール印刷コンポーネント TplTackPrev は,TplPrev コンポーネントの継承コンポーネントです.






ラベルの寸法と印刷マージン


設計時には,マージンの設定は,用紙のオフセット値より大きくはできません.設定しようとすると,オフセット値と同じ値に戻されます.プリンタのプロパティを変更した場合,plSetPrinter プロパティを設定し直すと,マージンの値もオフセットと同じ値に初期化されます.
各々のマージンの値を,オフセット値以上にすれば初期化されません.実行時であれば任意の値に設定できます.

使用するタックシールのラベルの寸法などは,購入時の製品仕様でわかりますが,各メーカーのサイトからも検索することができます.




図1
ラベルの寸法と印刷マージン
図2
ラベルの枠線のプロパティ
  • 枠線はプレビューだけで印刷はしない
  • Style プロパティが psClear だと非表示


 LeftMargin Integer 左マージン
 RightMargin Integer 右マージン
 TopMargin Integer 上マージン
 BottomMargin Integer 下マージン
 LabelWidth Integer ラベルの幅
PageWidth より大きな値には設定できない
 LabelHeight Integer ラベルの高さ
PageHeight より大きな値には設定できない
 LabelSpaceH Integer ラベル間の上下のマージン
 LabelSpaceV Integer ラベル間の上下のマージン
 LabelRowCnt Integer 1 頁のラベル行数 (上の図では 6 行)
 LabelColCnt Integer 1 頁のラベル列数 (上の図では 2 例)
 LabelColor TColor ラベルの色で,デフォルトは白
印刷時は無効
 LabelFrameLine TPen ラベルの周囲の線 (枠線) のプロパティ
印刷時は無効
表示しないようにするには,Style を psClear にする
 LabelFrameR TPen ラベルの四隅の丸み半径
印刷には無関係.プレビュー時のみ有効




用紙とラベルの色


用紙の色 (その他のプロパティの PaperColor) とラベルの色は,プレビューの時だけ有効です.印刷時は塗潰ししません.これらのプロパティは,色付きの規定帳票類に印刷する際に,使用する用紙の間違をなくすための視覚効果を狙ったものです.印刷時に用紙やラベルを塗潰ししたい場合は,Canvas に FillRect メソッ等を使用して塗潰して下さい.




ラベルの枚数


DataSet を指定している場合は自動的に決まります.
DataSet を指定しない場合,このプロパティ値で指定する枚数のラベルを作成します.単票形式 (SealType が stNoCut) の場合は PageCount と同じ値です.
DataSet を指定している場合にもラベルの枚数を設定できますが,レコード数を越えたラベルには何も印刷しません.なお,レコード数以下の枚数には設定しないで下さい.作成枚数が不定となります.

 LabelCount Integer ラベルの枚数




印刷開始ラベルとラベルの表示


タックシールの印刷は,1 頁分全部を使用しないで終了する場合があります.そのような時に,開始ラベルを指定すると無駄がありません.その開始ラベル位置の指定用のプロパティです.
図では 3 行 2 列目のラベルを示しています.


図3
印刷開始ラベル

 StartRow Integer 印刷開始の行番号
 StartCol Integer 印刷開始の列番号
 DrawBeforeSeal Boolean True にすると印刷開始前までのラベルの枠線も表示
デフォルトは False




印刷位置の微調整


規定用紙に印刷する場合など,印刷位置を調整したい時に使用します.印刷位置は,プリンタを変更すると,変わる場合があります.ntOffsetX と PrintOffsetY プロパティを設定することによって,元の描画コードを変更せずに印刷位置を調整することが可能です.

 PrintOffsetX Integer 印刷位置の微調整用
この値が正の場合,印刷位置が全体に右に移動
プレビューは変化しない
 PrintOffsetY Integer 印刷位置の微調整用
この値が正の場合,印刷位置が全体に下に移動
プレューは変化しない




印刷する頁の範囲


Print メソッドでプレビューなしで直接印刷する場合などに使用します.

 PrintFromPage Integer 印刷開始頁の指定
デフォルトは 1
TPrintDialog の FromPage と同じ意味
 PrintToPage Integer 印刷の終了頁の指定
デフォルトでは総頁数
TPrintDialog の ToPage と同じ意味




その他


上記以外のプロパティです.

 ViewClip Boolean 印刷ではクリップされてしまう領域をプレビューでは表示可能にするためのフラグ
 PaperColor TColor プレビュー時だけ有効な用紙の色

色付きの規定帳票類に印刷する際に,使用する用紙の間違をなくすための視覚効果を狙ったもの
 Printing Boolean 印刷中のフラグ
TPrinter の Printing プロパティと同じ値
 AcrobatOut Boolean プリンタに Acrobat を指定すると True
 InversePrint Boolean 逆方向からの印刷フラグ
 UseOriginPaperSize Boolean True にすると,強制的に設計時の用紙サイズと印刷の方向にする
デフォルトは False