我需要使用 Java 打印到Epson Endorsement TM-h6000iv打印机(USB 版)。但是,我阅读手册并没有希望找到可以帮助的东西。我也毫无希望地改变了打印机偏好!我尝试使用 java 中的TextPrinter类进行打印工作的 java 代码。
主要“打印”功能:
// ----- start printing ------
public int print(Graphics g, PageFormat pf, int pageIndex) {
double ww, hh, x, y;
String s;
pf = PF; // The PF indicates for defaultPage PF= Pj.defaultPage();
GG = (Graphics2D) g;
s = "Serif";
GG.setFont(new Font(s, Font.BOLD, Fy));
GG.setColor(Color.black);
GFont = GG.getFont();
FM = GG.getFontMetrics();
// Insure printing of ONE page
if (pageIndex != 0)
return Printable.NO_SUCH_PAGE;
ww = pf.getImageableWidth();
hh = pf.getImageableHeight();
x = pf.getImageableX();
y = pf.getImageableY();
GG.translate(x, y);
int xpos = 0;
draw(getLine(10), xpos, 5);//getLine to return line of String from 0-9 this line will return "0123456789"
draw(getLine(20), xpos, 6);//"01234567890123456789"
draw(getLine(30), xpos, 7); // etc.
draw(getLine(40), xpos, 8);
int x0 = 0, x1 = (int) ww - 10;
// GG.drawRect(x0, x0, x1, x1);
// draw Rectangular
GG.drawLine(x0, x0, x1, x0);
GG.drawLine(x0, x0, x0, x1);
GG.drawLine(x0, x1, x1, x1);
GG.drawLine(x1, x1, x1, x0);
return Printable.PAGE_EXISTS;
}
但是,预期输出如下图所示:
但是,实际输出如下图所示:
正如你所看到的,没有边框也没有出现一些字符!我不知道我的代码哪里错了?!
在这里你可以看到这台打印机的主要属性其中“背书”之一:
很抱歉这个冗长的解释,但任何帮助将不胜感激,