- - PR -
java.awt.print.PrinterJob.printDialog()で行うマージンの設定を自動で行うには?
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2005-12-20 18:36
java.awt.print.PrinterJob.printDialog()で出力されるポップアップメニュで
マージンの設定を行わないと決まった位置には出力されない印刷業務を抱えています。 これで、毎回毎回マージンを投入せずに、プログラムの中で値を指定してやりたいのですが、 そのようなメソッドが見付かりません。出来ないのでしょうか? | ||||||||
|
投稿日時: 2005-12-20 18:56
java.awt.print.Paper.setImageableArea だったかな。 java.awt.print.PageFormat クラスの setPaper メソッドで Paper を引き渡す。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2005-12-20 18:58
前投稿が変更されましたので、こちらも削除します。
[ メッセージ編集済み 編集者: みや 編集日時 2005-12-20 19:14 ] | ||||||||
|
投稿日時: 2005-12-20 19:10
すいません、先の投稿は誤字ってましたので削除して修正投稿しました。
なんせ 1 年以上触ってないものでして... (^^;) _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2005-12-20 19:12
済みませんが、Paperになった後、どのようにすれば印刷出来るのでしょうか? | ||||||||
|
投稿日時: 2005-12-20 19:45
java.awt.print.PrintJob.defaultPage が PageFormat に当たるはずですが... defaultPage のインスタンスから setPaper メソッドを使って Paper って渡せませんでしたっけ?
こんなイメージ。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2005-12-21 10:23
どうも有り難う御座います。setPaper()が存在する理由が漸く分かりました。
PrinterJob job2 = PrinterJob.getPrinterJob(); PageFormat format = job2.pageDialog(job2.defaultPage()); Paper paper1 = format.getPaper(); paper1.setImageableArea(0,0,468,648); format.setPaper(paper1); job2.setPrintable(printable, format); if(job2.printDialog()) { job2.print(); } のように、printDialog()を加えると、ダイアログで特別な値を打ち込まなくても、 setImageableArea(0,0, のマージン設定は反映されるのですが、printDialog()無しで 直接、job2.print()を発行すると、マージン設定が反映されません。 しかも、最初のダイアログは出てくるし、java.awt.print.*って本当に分け分からない 代物です。 |
1