二维码生成

 首先,在工程中导入Zxing的jar包
------------------------------------------------------------------------------------------------------
//QRCodeReader reader = new QRCodeReader(); 
       int width = 200, height = 200;  
       QRCodeWriter writer = new QRCodeWriter();
       try {
        //edit.getText();
//       Log.i(TAG, "编辑框中的内容: " + edit.getText().toString());
//       System.out.println(edit.getText().toString());
       
       
        BitMatrix martix = writer.encode("http://192.168.56.1:8080/nongye.apk", BarcodeFormat.QR_CODE, width, height);
        System.out.println("w:"+martix.getWidth()+"h:"+martix.getHeight()); 
        String imageFormat = "png"; 
        Hashtable<EncodeHintType, String> hints = new Hashtable<EncodeHintType, String>();
        hints.put(EncodeHintType.CHARACTER_SET, "utf-8");
       BitMatrix bitMatrix = new QRCodeWriter().encode("http://192.168.56.1:8080/nongye.apk",BarcodeFormat.QR_CODE, width, height,hints);
        int[] pixels = new int[width * height];    
            for (int y = 0; y < height; y++) {    
                for (int x = 0; x < width; x++) {    
                    if(bitMatrix.get(x, y)){    
                        pixels[y * width + x] = 0xff000000;    
                    }else{
                    pixels[y * width + x] = 0xffffffff;
                    }    
                        
                }    
            }    
                
            Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);    
               
            bitmap.setPixels(pixels, 0, width, 0, 0, width, height);
            iv.setImageBitmap(bitmap);
//            RGBLuminanceSource source = new RGBLuminanceSource(bitmap);
//           LuminanceSource source = new RGBLuminanceSource(path);  
//           BinaryBitmap bitmap1 = new BinaryBitmap(new HybridBinarizer(source));  
//            QRCodeReader reader2= new QRCodeReader();
//            Result result = reader2.decode(bitmap1);
//            System.out.println("res"+result.getText());
            
} catch (WriterException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
二维码生成驱动C语言的过程如下: 首先,需要了解二维码的生成原理和格式。二维码是一种矩阵型的图形编码,可以存储大量信息。它的生成过程包括数据编码、纠错码计算和图形绘制三个主要步骤。 在C语言中,可以使用开源的二维码生成库,如ZXing或QRcode等。这些库提供了控制二维码生成的函数和接口,方便我们使用C语言进行二维码生成。 首先,需要初始化一个二维码生成器对象。然后,调用相关函数设置生成器的参数,如二维码版本、纠错级别、编码方式等。这些参数将影响生成的二维码的容量和可靠性。 接下来,需要将待编码的数据传递给生成器。生成器会根据设置的参数将数据编码成二维码格式。编码过程中,可以根据需要进行错误校正,以提高二维码的可靠性。 最后,调用绘制函数将生成的二维码图形绘制到指定的输出设备或文件中。绘制过程中,可以设置二维码的尺寸、颜色、间距等属性。 需要注意的是,二维码的生成需要依赖相应的驱动程序和库文件,因此在使用C语言进行二维码生成前,需要安装和配置相应的驱动和库。 总而言之,生成二维码的过程需要借助于C语言的二维码生成库,通过设置参数、传递数据、进行编码和绘制等步骤来实现。通过合理的调用和配置,可以生成符合要求的二维码图形。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值