• 二维码生成


    网上找到的二维码大致分为几类:
    第一类:微信,微博等开放平台提供的二维码生成。二维码生成有限制,在业务需要大量二维码生成时,不能提供很好的支持。
    第二类:免费API。虽然免费,但是都是在线生成,不提供后台API调用做批量处理;或者要批量需要收费;或者链接使用指定链接,由提供商后台做链接跳转。
    第三类:开源产品,自己调用API生成二维码图片。
    在这里,我们选择第三类,将二维码生成处理成一个内部dubbo服务然后提供出来。
     
    具体思路如下:
    业务提供原始URL,然后经由百度短链服务转换为短链,再基于此短链生成二维码。用短链服务的目的是,可以压缩业务原始URL,降低生成二维码复杂度,提升二维码辨识率。
     
    具体代码如下:
    基于gradle的依赖:
    compile 'com.google.zxing:core:3.2.0'
    compile 'com.google.zxing:javase:3.2.0'
     
    JAVA代码如下:
    try {
        //生成QRcode
        BitMatrix matrix = new MultiFormatWriter().encode(shortChain, BarcodeFormat.QR_CODE, 500, 500);
        MatrixToImageWriter.writeToPath(matrix, “PNG”, Paths.get(outFileString));

        //上传七牛,返回URL
        String fileName = UUID.randomUUID().toString()+".png";
        File outImage = Paths.get(outFileString).toFile();

        qrCode.setImageUrl(FileUploadUtils.saveFileInQiNiu(fileName, outImage).getUrl());

        outImage.delete();
    } catch (Exception e) {
        e.printStackTrace();
    }
     
     
     
     
     
     
  • 相关阅读:
    iOS UITableView的cell重用标识
    iOS SDWebImage清理缓存数据
    iOS UITextView 根据输入text自适应高度
    iOS 网络请求 NSURLSession 的上传文件方法
    iOS开发之tintColor属性详解
    iOS SDWEBImage和collectionView的组合,以及collectionView的随意间距设置
    iOS9 Xcode7 设置Launch Image 启动图片
    iOS
    iOS 浅谈AFNetworking网络请求
    贝塞尔曲线
  • 原文地址:https://www.cnblogs.com/asfeixue/p/4452777.html
Copyright © 2020-2023  润新知