2

アプリケーションが画像とその横にテキストを印刷するJavaアプリケーションを作成しています。印刷中は 2 台のプリンターがあり、それに応じて選択します。ユーザーがプリンターやその他のものを選択するための印刷ダイアログは表示しません。私のコードは次のとおりです

PrinterJob job = PrinterJob.getPrinterJob();
boolean ok = job.printDialog();

行をスキップしない場合boolean ok = job.printDialog();、テキストは私の場合(20,20)で言及された位置に印刷されますが、行をスキップすると、プリンターのさらに離れた場所で印刷が行われる可能性があります(120、120)これつまり、マージンの設定が必要です。また、プリンターを設定するためのコードを教えてください。

4

2 に答える 2

5

job.print()の代わりに を使用して、[印刷] ダイアログ ボックスを非表示にすることができますjob.printDialog()。ただし、余白やその他すべてを変更できるようにする場合は、java.awt.print.Paper および java.awt.print.PageFormat の下にあるPaperおよびクラスを使用する必要があります。PageFormatPaper では、用紙のサイズを設定して で使用できますPageFormat。次に、タイプのsetPrintable()オブジェクトをパラメーターとして使用して、PrinterJob クラスのメソッドを使用できます。しかし、最も重要なのは、それがあなたの懸念である場合、このクラスではマージンを設定できることです。PrintablePrintFormatPaper

于 2012-08-03T18:45:37.703 に答える