7 Replies Latest reply on Jul 12, 2016 7:58 AM by Robin West

    ZQ520 not printing images in CPCL mode

    philip koprowski

      We have a large amount of existing CPCL code used in iOS applications that works properly when printing to the rw420 printer.


      This same code also works with the ZQ520 except for the images. They do not print using this command even though the printer shows they are in permanent memory. This is the command used to print that also works on the rw420.


      PCX 11 8 !<ERSLOGO.PCX


      I tried a number of workarounds found on this blog and the web and nothing works except using this ZPL code to print the image:




      I have tried the following:


      remove the extension


      changed the extension to GRF


      followed instructions in this knowledge based article to upload as PCX: https://km.zebra.com/resources/sites/ZEBRA/content/live/SOLUTIONS/8000/SO8519/en_US/Command_Line_Converting_PCX_Files.pd…


      nothing worked. in fact, the above didn't work properly in ZPL either, it printed something but it was not the image we expected and seemed that the colors were inverted.


      Any help with this is very appreciated. We really don't want to rewrite all the CPCL code into ZPL just to print images. This seems to be a bug in the ZQ520 firmware as it should be backward compatible.

        • Re: ZQ520 not printing images in CPCL mode
          philip koprowski

          I was able to solve this by saving the file in PCX 0 format. that is not mentioned in the knowledge base article.


          It now prints in CPCL mode as expected.


          The only issue is that shouldn't the link OS storeimage method have worked? I tried the latest api, which doesn't print images on the old rw420 printer if used, but it still didn't work for the ZQ520 using png format images. Considering that this worked on the rw420 not sure why it shouldn't on the zq520.


          at least i have a solution now.

          • Re: ZQ520 not printing images in CPCL mode
            Robin West

            The printer.StoreImage() command works correctly if you create the printer object with:

            ZebraPrinter printer = ZebraPrinterFactory.getInstance(PrinterLanguage.CPCL, connection);


            The SDK reads the ZQ520 printer as a ZPL printer by default, even if the language on the printer is set to line_print or cpcl.  The command above fixes that.


            1 of 1 people found this helpful