喫茶XRAYトップページ

[スレッド全体
]

[127] Re2:印刷設定の疑問返信 削除
2005/2/17 (木) 00:05:23 Texwork
▼ Mr.XRAYさん回答ありがとうございます。
整理しながら、考えて見ます。

[138] Re3:印刷設定の疑問返信 削除
2005/2/21 (月) 00:09:02 Mr.XRAY
▼ Texworkさん

疑問に対する回答にはなっていなかったかも知れません.
それに長々と書きすぎました.

印刷プレビュー制御コンポーネントの開発趣旨は,印刷状態をプレビュー
するということで開発しています.
プリンタが変更になっても,A4やB5とか,どのプリンタドライバにある
用紙であれば,設計時,つまり開発の時に設定しておけば問題はない
と考えています.

もし,そうならなければバグです.

あとは,アプリの利用者に,一度,プリンタ(用紙サイズ)などを設定
してもらい,それを保存読出しする方法を考えることができます.
これなら確実です.
これは,例えば,テストプログラムにありますが,[何々に使用するプリ
ンタの設定]等のボタンで,PritnerSetupDialogを表示するというもの
です.帳票毎に設定することも考えられます.

ただし,一部のプリンタや,ユーザ定義(カスタム)用紙などでは,OSや
プリンタドライバによっては再現できない場合があります.
Windows2000以上で,独自のドライバでない時は,大抵うまくいく様です.




[143] Re4:印刷設定の疑問返信 削除
2005/2/23 (水) 23:51:23 Texwork
▼ Mr.XRAYさん
> プリンタが変更になっても,A4やB5とか,どのプリンタドライバにある
> 用紙であれば,設計時,つまり開発の時に設定しておけば問題はない
> と考えています.
> あとは,アプリの利用者に,一度,プリンタ(用紙サイズ)などを設定
> してもらい,それを保存読出しする方法を考えることができます.
> これなら確実です.
> これは,例えば,テストプログラムにありますが,[何々に使用するプリ
> ンタの設定]等のボタンで,PritnerSetupDialogを表示するというもの
> です.帳票毎に設定することも考えられます.


「印刷プレビュー制御コンポーネント」部分はこの解説を読ませていただいて理解できました。
「プリンタ設定コンポーネント」が必要な理由がいまいち理解できません

印刷プレビュー制御コンポーネントに関して
 ★Ver4.0では,特にプレビューフォームとプリンタ設定コンポーネントを指定しなくても
  使用可能にし,より使いやすい様に改良しました.

となっているのですが、もしかして、もはや別物でよろしいのでしょうか?
http://homepage2.nifty.com/Mr_XRAY/Delphi/plPrev/index.htm
には必要コンポーネントに「プリンタ設定コンポーネント」と書かれていて
頭の悪い私には、何がなんだか・・・という状況です。

ですが、前出の説明で、「印刷プレビュー制御コンポーネント」の疑問は
解消したとおもいます。
ありがとうございました。


[144] プリンタ設定コンポが必要な理由返信 削除
2005/2/24 (木) 00:12:03 Mr.XRAY
▼ Texworkさん

> 「印刷プレビュー制御コンポーネント」部分はこの解説を読ませていただいて理解できました。
> 「プリンタ設定コンポーネント」が必要な理由がいまいち理解できません


これはこういうことです.
印刷プレビュー制御コンポを使用する時は,必ず,プリンタ設定コンポが,
その開発環境で,コンポーネントとして利用可能な状態でなければなりま
せん.つまり,コンポーネントのインストール(登録)が必要です.
(正確に言うと,plSetPrinter.pasがパスの通ったフォルダにあればよい)

ただし,作成するアプリで,特にプリンタ設定コンポを配置(ビジュアルに)
しなくても,印刷プレビュー制御コンポは使用可能です.
この時,印刷プレビュー制御コンポは,現在のパソコンの,通常使用する
プリンタの設定情報を元に描画をします.
(実際にはplSetPrinter.pasのメソッド類を使用しています)

この通常使用するプリンタの設定値というのは,多くの場合,A4縦となって
います.
したがって,それ以外の用紙サイズや印刷の方向で使用する時は,プリンタ
設定コンポをFormに配置して,そのプリンタ設定コンポでプリンタの設定
をします(コンポをダブルクリックすると設定のダイアログが現れます).

すると,印刷プレビュー制御コンポは,自動的に,Formに配置したプリンタ
設定コンポを探し出し,その設定を利用して描画します.
もし,複数のプリンタ設定コンポが配置してある場合には,印刷プレビュー
制御コンポのplSetPrinterプロパティで,使用するプリンタ設定コンポを
指定してやれば,その設定を使用します.

この設定は,作成したアプリ(EXE)を別のパソコンで実行しても原則的には
再現します.ただし,OSやプリンタドライバによっては,再現しない場合が
あります.
これが,No138の最後の文章の意味です.

またまた長くなってしまいましたが...
不明な点は,いくらでも聞いて下さい.マニュアルもそんなやり取りの中で
いろいろ修正して行きたいと考えています.
これがオンライン・マニュアルの利点じゃないかと... (^_^;)

[備考]
プリンタ設定コンポは,Formに配置した時点では,そのパソコンの通常使用
するプリンタのデフォルトの設定になっています.


[146] プリンタ設定コンポが必要な理由返信 削除
2005/2/24 (木) 00:27:16 Mr.XRAY
▼ Texworkさん

> すると,印刷プレビュー制御コンポは,自動的に,Formに配置したプリンタ
> 設定コンポを探し出し,その設定を利用して描画します.


ついでに...
Delphiに附属しているQuick Reportはこれが困難です.
その内部でプリンタオブジェクトを生成しているため,外部で設定した
内容は無視されます.
ただし,Quick Reportはいわゆるレポート作成ツールですので,ビジュ
アルな設計が可能です.


[147] Re5:印刷設定の疑問返信 削除
2005/2/24 (木) 07:52:39 Mr.XRAY
▼ Texworkさん

>  ★Ver4.0では,特にプレビューフォームとプリンタ設定コンポーネントを指定しなくても
>   使用可能にし,より使いやすい様に改良しました.


(該当プロパティを)指定しなくても使用できますが,
                  ^^^^
プレビューフォームの元であるplPrevfrm.pas,plPrevfrm.dfm,
plSetPrinter.pasはパスが通ったフォルダに必要です.
なくてもいいという意味ではありません.


[▼次のスレッド]
INCM/CMT
Cyclamen v3.82