91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 4KB
    文件類型: .java
    金幣: 1
    下載: 0 次
    發布日期: 2021-06-10
  • 語言: Java
  • 標簽: zpl??圖片??編碼??

資源簡介

實現思路: 1、獲取圖片的二值化字節數組 這一步是關鍵 2、將字節數組轉為十六進制 3、壓縮十六進制字符串 結尾為1、0或者與上一行相同的;相同的連續字符壓縮 4、拼湊ZPL編碼,寬度需要擴大,因為需要時8個點(1字節)的整數倍

資源截圖

代碼片段和文件信息

package?image;

import?javax.imageio.ImageIO;
import?java.awt.*;
import?java.awt.image.BufferedImage;
import?java.awt.image.DataBufferByte;
import?java.io.IOException;
import?java.net.URL;
import?java.util.regex.Matcher;
import?java.util.regex.Pattern;

/**
?*?在?erp中單獨使用
?*?實現思路:
?*?1、獲取圖片的二值化字節數組?這一步是關鍵
?*?2、將字節數組轉為十六進制
?*?3、壓縮十六進制字符串?結尾為1、0或者與上一行相同的;相同的連續字符壓縮
?*?4、拼湊ZPL編碼,寬度需要擴大,因為需要時8個點(1字節)的整數倍
?*?Created?by?guzy?on?17/11/12.
?*/
public?class?Image2Zpl?{

????static?Pattern?ZEROS=Pattern.compile(“0+$“)ONES=Pattern.compile(“1+$“)MULTI_W=Pattern.compile(“([0-9A-Z])\\1{2}“);

????public?static?void?main(String[]?args)?throws?IOException?{
????????System.out.println(“^XA“+image2Zpl(ImageIO.read(new?URL(“http://jxc-storage.oss-cn-shanghai.aliyuncs.com/0cac85f28e42f6f811fc63b4067cae21.jpg“)))+“^XZ“);
????}

????public?static?String?image2Zpl(BufferedImage?image)?{
????????//獲取圖片的字節數組
????????DataBufferByte?data=(DataBufferByte)?getBinaryGrayImage(image).getRaster().getDataBuffer();
????????byte[]?imgData=data.getData();

????????int?newW=(image.getWidth()+7)/8;//實際每行字節大小,8個點,每個點1位,共8位
????????String[]?strs=byte2HexStr(imgDatanewW);
????????int?bytes=imgData.length;
????????return?String.format(“^XA^GFA%d%d%d%s^FS^XZ“?bytes?bytes?newW?compress(strs));
????}


????/**
?????*?獲取二值化圖,并取反
?????*?@param?srcImage
?????*?@return
?????*/
????private?static?BufferedImage?getBinaryGrayImage(BufferedImage?srcImage)?{
????????BufferedImage?dstImage?=?new?BufferedImage(srcImage.getWidth()?srcImage.getHeight()?BufferedImage.TYPE_BYTE_BINARY);
????????dstImage.getGraphics().drawImage(srcImage?0?0?null);
????????for?(int?y?=?0;?y?????????????for?(int?x?=?0;?x?????????????????Color?color?=?new?Color(dstImage.getRGB(x?y));
????????????????//獲取該點的像素的RGB的顏色
????????????????Color?newColor?=?new?Color(255?-?color.getRed()?255?-?color.getGreen()?255?-?color.getBlue());
????????????????dstImage.setRGB(x?

評論

共有 條評論