一個比較好的2d條形碼解析條碼的工具庫
從ZXING 中剝離出來的
測試了一下,還可以,基本上清晰圖片都可以識別
import java.awt.Frame;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.MediaTracker;
import java.awt.image.BufferedImage;
import com.google.zxing.MonochromeBitmapSource;
import com.google.zxing.MultiFormatReader;
import com.google.zxing.Reader;
import com.google.zxing.ReaderException;
import com.google.zxing.Result;
import com.google.zxing.client.j2se.;
public class CodeReader {
/**
* @param args
* @throws ReaderException
* @throws InterruptedException
*/
public static void main(String[] args) throws ReaderException, InterruptedException {
Reader reader = new MultiFormatReader();
String imgPath =
"test.jpg";
Image image=java.awt.Toolkit.getDefaultToolkit().getImage(imgPath);
BufferedImage myImage = CodeReader.imageToBufImage(image);
MonochromeBitmapSource source = new (myImage);
Result result = reader.decode(source);
System.out.println(result.getText());
}
public static BufferedImage imageToBufImage(Image image) throws InterruptedException{
MediaTracker mt=new MediaTracker(new Frame());
mt.addImage(image,0);
mt.waitForID(0);
BufferedImage bufImage=new BufferedImage(image.getWidth(null),image.getHeight(null),BufferedImage.TYPE_INT_BGR);
Graphics2D g2d=bufImage.createGraphics();
g2d.drawImage(image,0,0,null);
return bufImage;
}
}
2. java中zxing二維碼怎麼在掃描的時候跳轉到指定頁面
有沒有沒解決的?找到方法了,
@SuppressWarnings({"rawtypes","unchecked"})
privatestaticvoidcreateZxing()throwsWriterException,IOException{
intwidth=300;
inthight=300;
Stringformat="png";
Stringcontent="https://www..com";//這里要注意!!!!!!!
HashMaphints=newHashMap();
hints.put(EncodeHintType.CHARACTER_SET,"utf-8");
hints.put(EncodeHintType.ERROR_CORRECTION,
+ErrorCorrectionLevel.M);//糾錯等級L,M,Q,H
hints.put(EncodeHintType.MARGIN,2);//邊距
BitMatrixbitMatrix=newMultiFormatWriter().encode(content,
+BarcodeFormat.QR_CODE,width,hight,hints);
Filefile=newFile("D:/imag.png");
MatrixToImageWriter.writeToFile(bitMatrix,format,file);
}
/*你需要跳轉的頁面前面加上http協議,掃描的軟體比方說:微信,它會直接識別http
協議*/
3. zxing漢字是什麼意思
zxing漢字是什麼意思?
zxing是一款功能強大的開源二維碼條碼識別庫,是由Google在2008年開發出來的。不過,很多人可能並不知道zxing這個單詞的具體含義。事實上,zxing是由兩個單詞合並而來,分別是「Zebra」和「Crossing」,中文意思就是斑馬線,也是二維碼的黑白相間的象徵。因此,zxing的名字暗示了這個庫可以輕松地識別任何樣式的二維碼,就像斑馬線上交叉的線一樣。
zxing可以識別多種類型的一維碼和二維碼,包括條形碼、數據矩陣碼、PDF417碼、QR碼、Aztec碼等。同時,zxing還可以生成二維碼和條形碼,能夠把識別到的碼轉化為信息或者條形碼圖片。此外,zxing還支持圖像中的解碼,可以用相機拍攝二維碼進行識別,具有了掃描快速、解碼准確的特點。
zxing應用范圍有哪些?
zxing可以被集成到Java、Android、iOS、Python等多種編程語言中,並且還可以通過命令行的方式進行操作。因此,zxing的應用范圍非常廣泛,不僅僅局限於二維碼掃描和生成,而且還可以用於物流系統中的運單掃描、商場中的商品掃描、門禁系統中的身份證掃描等等。不論是生產、銷售、物流或者安全領域,zxing都可以提高工作效率,降低人工錯誤率,具有著非常重要的作用。