現在の大学のプロジェクトで特定のラベルプリンター用に何かを印刷しようとすると、このエラーが発生します。
java.awt.print.PrinterException: Paper's imageable width is too small.
at sun.print.RasterPrinterJob.printPage(Unknown Source)
at sun.print.RasterPrinterJob.print(Unknown Source)
at sun.print.RasterPrinterJob.print(Unknown Source)
at Printer.print(Printer.java:91)
at Printer.<init>(Printer.java:43)
at VisitorDBTest.main(VisitorDBTest.java:10)
しかし、その理由はわかりません。私はこの特定のプリンターの正確なラベルコードを持っています、ラベルの幅と高さは正しいです。画像サイズを正確なラベルサイズ(1/72インチ)に設定してから、運が悪かったので小さく設定してみました。このコードは、A4ページで通常のインクジェットに印刷するときに正常に機能します。(異なるPaperオブジェクトとPageFormatオブジェクトを使用して)DYMO 450ラベルプリンターに印刷しようとすると、エラーが発生するだけです。グーグルの結果を見ると、このエラーが発生したのは私だけです。
編集:画像化可能な幅を画面に印刷した後、次の結果が得られます:
Paper imageable width is 196.0
PageFormat imageable width is 151.0
PrinterJob imageable width is -65.0267716535433
私の理解では、PageFormatはPaperから画像化可能な幅を取得し、PrinterJobはPageFormatから画像化可能な幅を取得します。私は明らかにここで何かが欠けています。