1

過去 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 番目のラベルまで表示されます。

誰かが私が間違っていることを教えてもらえますか?

4

0 に答える 0