過去 3 時間、2 つのカーボン インクと 2 つのラベルのロール、まだ 1 つも印刷できません。一日中これに苦労していましたが、まだ何もわかりませんでした。見た目からして全て運次第のようです。
class MyPrintable implements Printable {
public int print(Graphics g, PageFormat pf, int pageIndex) {
if (pageIndex == 0) {
Paper paper = new Paper();
paper.setImageableArea(0, 0, 320, 115);
paper.setSize(340, 128);
pf.setPaper(paper);
try {
BufferedImage read = ImageIO.read(new File("tmp/conv/foo.png"));
g.drawImage(read.getScaledInstance(220, 50, Image.SCALE_SMOOTH), 40, 10, null);
} catch (IOException ex) {
}
return Printable.PAGE_EXISTS;
}
return Printable.NO_SUCH_PAGE;
}
}
1 つのラベルに 1 つのバーコードを印刷する必要があります。ラベルのサイズは幅9cm、高さ3.4cmです。これにより、幅 340 ピクセル、高さ 128 ピクセルになります。そのため、画像サイズをこれらの値に設定しました。
問題は、プリンターに印刷するように指示すると、8 番目のラベルにバーコードが印刷されることです。最初の 7 つのラベルをすべて通過し、常に 7 番目と 8 番目のラベルの間のものを印刷します。理由はわかりませんが、すべての可能な値ですでに試しました。サイズを 0px に設定し、画像化可能なサイズを 0px に設定し、画像のサイズを 0px に拡大しても、7 ~ 8 番目のラベルまで表示されます。
誰かが私が間違っていることを教えてもらえますか?