【问题标题】:I KEEP GETTING ERROR_WRONG_LABEL on Brother Printer QL-710W我在 Brother 打印机 QL-710W 上一直收到 ERROR_WRONG_LABEL
【发布时间】:2016-06-08 11:15:11
【问题描述】:

我一直试图让我的 android 代码打印到新的 Brother 打印机,但是

我不断收到 ERROR_WRONG_LABEL。

我也得到了信息:

D/Brother Print SDK: no such enum object for the id: -1

这是我的代码:

    public void printLabel() {


        Printer myPrinter = new Printer();
        PrinterInfo myPrinterInfo = new PrinterInfo();

        try {

            myPrinterInfo.printerModel = PrinterInfo.Model.QL_710W;
            myPrinterInfo.ipAddress = "12.1.3.45";//not real ip
            myPrinterInfo.macAddress = "";
            myPrinterInfo.port = PrinterInfo.Port.NET;
            myPrinterInfo.paperSize = PrinterInfo.PaperSize.A7;
            myPrinterInfo.printMode=PrinterInfo.PrintMode.FIT_TO_PAGE;
            myPrinterInfo.numberOfCopies = 1;

            LabelInfo mLabelInfo = new LabelInfo();
            mLabelInfo.labelNameIndex = 5;
            mLabelInfo.isAutoCut = true;
            mLabelInfo.isEndCut = true;
            mLabelInfo.isHalfCut = false;
            mLabelInfo.isSpecialTape = false;


            myPrinter.setPrinterInfo(myPrinterInfo);



            myPrinter.setLabelInfo(mLabelInfo);

            //File downloadFolder = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);

            Log.i("HEYYYY", "startCommunication = " + myPrinter.startCommunication());

            Bitmap map = BitmapFactory.decodeResource(getResources(), R.drawable.ic_action_overflow);

            PrinterStatus printerStatus = myPrinter.printImage(map);

            Log.i("HEYYYY", "errorCode-11 = " + printerStatus.errorCode);
            Log.i("HEYYYY", "labelWidth = " + myPrinter.getLabelParam().labelWidth);
            Log.i("HEYYYY", "paperWidth = " + myPrinter.getLabelParam().paperWidth);
            Log.i("HEYYYY", "labelNameIndex " + mLabelInfo.labelNameIndex);
            Log.i("HEYYYY", "printers " + myPrinter.getNetPrinters("QL-710W"));
            Log.i("Label-id", myPrinter.getPrinterStatus().labelId + "");
            myPrinter.endCommunication();




        } catch(Exception e){

            e.printStackTrace();

        }
}

每当我输入从打印机页面获得的mac地址时,错误代码都会更改为

ERROR_NOT_MATCH_ADDRESS.

但没有它(将其设置为空字符串或将其注释掉),它会更改为

ERROR_WRONG_LABEL

请问这段代码有什么问题?

更新:

我插入了正确的mac id,现在错误代码是

ERROR_WRONG_LABEL

我该怎么办?

【问题讨论】:

标签: java android printing network-printers


【解决方案1】:

阅读了附带的说明书,发现ERROR_WRONG_LABEL代码是由于错误labelNameIndex或错误paperSize造成的。

我将labelNameIndex 的值设置为 15,瞧,它起作用了。

我觉得任何面临这个问题的人都应该尝试labelNameIndex 的各种值。

谢谢。

【讨论】:

  • myPrinterInfo.labelNameIndex = myPrinter.checkLabelInPrinter(); 不工作。请帮助我
  • 自从我在上一个工作场所(2016 年)入侵这台打印机已经有一段时间了,我再也无法访问它了。我建议您尝试 labelNameIndex 属性的各种值...(15 对我有用)。干杯。
  • 另外,它给你带来了什么错误?这可能会给出问题的想法
  • 我想在运行时获取打印机的 labelNameIndex 并将其设置为打印机。 myPrinterInfo.labelNameIndex = LabelInfo.QL1100.W103H164.ordinal(); 这个东西在起作用,但不是相反。
  • 好吧,我没试过。我刚刚进行了实验并得到了一个有效的值。即15 在我的情况下。我建议您也这样做,除非您的应用程序完全要求您在运行时获取它。我很想帮忙,但正如我所说,我再也无法使用那台打印机了,我已经离开了公司。
猜你喜欢
  • 1970-01-01
  • 2019-08-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多