„PrinterException: papierowa szerokość obrazu jest zbyt mała” Widzę, co jest nie tak, ale jak mogę to naprawić?

Dostaję ten błąd, gdy próbuję wydrukować coś dla konkretnej drukarki etykiet w moim obecnym projekcie uczelni:

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)

Ale nie widzę powodu, dlaczego. Mam dokładny kod etykiety dla tej konkretnej drukarki, szerokość i wysokość etykiety są poprawne. Ustawiam rozmiar obrazu do dokładnego rozmiaru etykiety (w 1/72 cala), a następnie próbowałem go ustawić mniejszy bez powodzenia. Ten kod działa dobrze, gdy drukuję na moim zwykłym drukarce atramentowej na stronie A4. Błąd pojawia się tylko wtedy, gdy próbuję drukować na drukarce etykiet DYMO 450 (używając różnych obiektów Paper i PageFormat). Wygląda na to, że patrząc na wyniki google, jestem praktycznie jedyną osobą w historii, która otrzymała ten błąd.

EDYTUJ: po wydrukowaniu szerokości obrazu na ekranie otrzymuję następujące wyniki:

Paper imageable width is 196.0
PageFormat imageable width is 151.0
PrinterJob imageable width is -65.0267716535433

Rozumiem, że zarówno PageFormat ma szerokość obrazu z papieru, a PrinterJob przyjmuje szerokość obrazu z PageFormat. Oczywiście czegoś tu brakuje.

questionAnswers(2)

yourAnswerToTheQuestion