Delphi Programming / Object Pascal
[掲載 2003年09月13日] [更新 2016年04月19日] 印刷プレビュー制御コンポーネント |
印刷プレビュー制御コンポーネント
テストプログラム TextFile |
動作確認等 |
Windows 7 U64(SP1) + Delphi XE(UP1) Pro |
テキストファイルの読込み描画メソッドのテストプログラムです.
テストプログラムのフォルダにある Readme.txt を読込んで表示します.
複数頁にわたるテキスト文書の印刷コード例はメソッドの説明ページにあります. |
|
図1
設計時画面 |
|
図2
実行画面 |
unit TextFileUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, plPrev, Buttons;
type
TForm1 = class(TForm)
BitBtn2: TBitBtn;
plPrev1: TplPrev;
procedure BitBtn1Click(Sender: TObject);
private
{ Private 宣言 }
public
{ Public 宣言 }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
//=============================================================================
// ディスクからテキストを読込んで設定したマージン内に印刷
// マージンを越える部分は印刷しない
// TplPrevのTextOutFileメソッドを使用
//
// 印刷プレビューコンポ(plPrev1)のプロパティを以下の様に設定している
// FormPositon := poDesigned;
// FormTop := 0;
// FormLest := 0;
// FormHeight := 700;
// FormWidth := 800;
//
// TFormはPositionをpoDesignedにしないとサイズ関係プロパティが反映されない
// 印刷プレビューフォームの場合,意図的に継承フォームを作成すれば,その継承フ
// ォームの設定値が有効となる
// このテストプログラムは自動作成の継承フォームに表示している
//=============================================================================
procedure TForm1.BitBtn1Click(Sender: TObject);
var
LRowH : Integer;
LLastY : Integer;
begin
plPrev1.TopMargin := 500; //上端マージン
plPrev1.BottomMargin := 250; //下端マージン
plPrev1.LeftMargin := 300; //左端マージン
plPrev1.RightMargin := 250; //右端マージン
plPrev1.BeginDoc;
try
plPrev1.FontSize(10.5);
plPrev1.FontName('MS P明朝');
LRowH := 60;
LLastY := plPrev1.TextOutFile(plPrev1.TopMargin,
plPrev1.LeftMargin,
plPrev1.PaperWidth - plPrev1.RightMargin,
LRowH,
'Readme.txt');
//テキストの描画領域を3mmの余白をつけて矩形で表示
plPrev1.PenColor(clBlue);
plPrev1.PenWidth(3);
plPrev1.RectLine(plPrev1.LeftMargin - 30,
plPrev1.PaperWidth - plPrev1.RightMargin + 30,
plPrev1.TopMargin - 30,
LLastY);
finally
plPrev1.EndDoc;
end;
//プレビュー開始
plPrev1.ShowModal;
end;
end.
|