Java Печать билета - PullRequest
       8

Java Печать билета

0 голосов
/ 28 января 2019

Я пытаюсь напечатать билет на Fujitsu fp-460 с этим кодом

public int print(Graphics g, PageFormat pf, int pageIndex) throws PrinterException {
        Graphics2D g2 = (Graphics2D) g;
        g2.translate((int)pf.getImageableY(),(int) pf.getImageableY());        
        g.setFont(new Font("TimesRoman", Font.PLAIN, 20));         
        g.drawString("Some Text", 00, 00);
        g.drawString("Some Text", 00, 20);
        g.drawString("Some Text", 00, 40);        
        g.drawString("Some Text", 00, 60);
        return PAGE_EXISTS;
    }

, но на напечатанной бумаге есть поле слева и справа, как сделать так, чтобы оно печаталосьПолная страница ?Принтер работает нормально при печати из других мест

Ответы [ 2 ]

0 голосов
/ 28 января 2019

Я не являюсь экспертом в печати AWT, но, основываясь на API, который я нашел, попробуйте:

pageFormat.getPaper().setSize(paperWidth, paperHeight);
pageFormat.getPaper().setImageableArea(iaX, iaY, iaWidth, iaHeight);

Это должно повлиять на размер бумаги и область печати. ​​

0 голосов
/ 28 января 2019

Физические ограничения

Этот принтер (и большинство принтеров в целом) имеет максимальную ширину печати, меньшую, чем страница, поэтому вы никогда не сможете распечатать его полный выпуск

См. Здесь: https://eu.mouser.com/datasheet/2/164/fp-460-2368.pdf

Соответствующий раздел:

enter image description here

Ограничение программного обеспечения

AsНепонятно, как вы получаете PageFormat, трудно сказать, что вы сделали не так.Может быть, проверьте этот ответ: https://stackoverflow.com/a/10484729/461499

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...