【问题标题】:Endorsement Epson TM-h6000IV Java Printing代言爱普生TM-h6000IV Java打印
【发布时间】:2015-01-27 20:37:28
【问题描述】:

我需要使用 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;
}

但是,预期的输出如下图所示:

但是,实际输出如下图:

其中你可以看到没有边框也没有出现一些字符!我不知道我的代码哪里错了?!

您可以在这里看到这台打印机的主要性能,其中“背书”之一:

对不起这个冗长的解释,但任何帮助将不胜感激,

【问题讨论】:

  • 我建议先尝试将此绘制到屏幕上,并且只有当您看到想要看到的内容时,才将其更改为打印。这实际上与打印机无关,而与布局有关。您的矩形没有任何意义,而且您根本没有使用字体度量。在屏幕图形上下文中正确完成绘图后,您可以使用相同的代码进行打印。
  • @RealSkeptic 感谢您的评论,真的我尝试了您的所有建议!问题是打印机不能在几乎 50 毫米的特定区域之外打印!不知道为什么?!!我也毫无希望地改变了打印机布局!这会让我发疯!!
  • 不确定你是否理解我所说的。无论打印机做什么,您的绘图都是错误。请先将其绘制到一个窗口上,然后将其固定在窗口上,然后尝试在打印机上打印。如果它不起作用,请编辑您的问题并输入您的新代码。
  • 您是否更改了PageFormat?打印机可能无法打印超出给定范围
  • 请问PageFormat是什么意思?规模?还是方向?还是 ImageableArea?我毫无希望地改变所有这些!打印机不打印特定区域!!我不知道的问题在哪里!!!

标签: java epson java-print


【解决方案1】:

终于,经过每天的头痛,我的问题解决了!!只是我将 Epson Printer Slip Setting 更改为 [92,68] [Height,Length] ,然后一切正常。感谢我的上帝!..

【讨论】:

  • Maheera 你用什么爱普生代码让它在背书打印机而不是收据打印机上打印?
猜你喜欢
  • 2013-05-26
  • 2015-04-04
  • 2013-02-25
  • 2016-05-06
  • 2010-10-10
  • 2018-08-07
  • 1970-01-01
  • 2013-05-08
  • 2014-12-13
相关资源
最近更新 更多