Я пытаюсь распечатать изображение на принтере zebra (LP-2844-Z) с использованием zpl-языка. В ZPL documentaion говорится, что вам нужно преобразовать изображение в ASCII HexaDecimal. Затем, используя команду GF, вы можете печатать изображение. Я попытался ниже код, чтобы получить изображение и преобразовать его в гекса десятичнойПечать изображений с помощью принтера zebra с использованием команды zpl
URL oracle = new URL(urlString);
URLConnection yc = oracle.openConnection();
BufferedImage bufferedImage = ImageIO.read(yc.getInputStream());
int rowsData = bufferedImage.getWidth()/8;
System.out.println(rowsData);
byte[] pixel = ((DataBufferByte)bufferedImage.getRaster().getDataBuffer()).getData();
System.out.println(pixel.length);
System.out.println(Hex.encodeHex(pixel, false));
А потом я пытался напечатать эти данные с помощью зебры принтера, но не печатает правильное изображение. Я попробовал другой код для получения байтов изображения и преобразовал его в шестнадцатеричный десятичный
URL oracle = new URL(urlString);
URLConnection yc = oracle.openConnection();
InputStream inputStream = yc.getInputStream();
byte[] imageData = IOUtils.toByteArray(inputStream);
System.out.println(Hex.encodeHex(pixel, false));
Тем не менее я не могу напечатать правильное изображение. Я следую следующему URL (http://labelary.com/viewer.html) и пытался увидеть код при загрузке изображения. Я обнаружил, что после загрузки изображения base64, созданный zebra viewer, совершенно другой, который я сгенерировал с использованием вышеуказанного кода. Я просматриваю несколько сообщений в stackoverflow, но все же я не могу решить эту проблему.
Я знаю, где я совершаю ошибку, но я не знаю, как ее решить. На самом деле я не могу сгенерировать ASCII Hex Base64 код для данного изображения. Это моя мысль.
Любая помощь предоставляется.
Спасибо,
Вы можете взглянуть на [zebra-toolkit] (https://github.com/diegoCath/zebra-toolkit). Это в Objective-C, но его довольно легко прочитать. В файле UIImage + HexRepresentation.m вы увидите метод для создания строкового представления zpl ascii-hex заданного изображения. – Diego