二维码的生成算法
来源:互联网 发布:南风知我意在线阅读 编辑:程序博客网 时间:2024/05/01 07:49
/**
* 创建QR二维码图片方法
*/
private Bitmap createQRCodeBitmap(String url) {
// 用于设置QR二维码参数
Hashtable<EncodeHintType, Object> qrParam = new Hashtable<EncodeHintType, Object>();
// 设置QR二维码的纠错级别——这里选择最高H级别
qrParam.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H);
// 设置编码方式
qrParam.put(EncodeHintType.CHARACTER_SET, "UTF-8");
// 设定二维码里面的内容,这里我采用我博客的地址
// String cont = "http://blog.csdn.net/fengltxx";
// 生成QR二维码数据——这里只是得到一个由true和false组成的数组
// 参数顺序分别为:编码内容url地址,编码类型,生成图片宽度,生成图片高度,设置参数
try {
BitMatrix bitMatrix = new MultiFormatWriter().encode(url,
BarcodeFormat.QR_CODE, 180, 180, qrParam);
// 开始利用二维码数据创建Bitmap图片,分别设为黑白两色
int w = bitMatrix.getWidth();
int h = bitMatrix.getHeight();
int[] data = new int[w * h];
for (int y = 0; y < h; y++) {
for (int x = 0; x < w; x++) {
if (bitMatrix.get(x, y))
data[y * w + x] = 0xff000000;// 黑色
else
data[y * w + x] = -1;// -1 相当于0xffffffff 白色
}
}
// 创建一张bitmap图片,采用最高的效果显示
Bitmap bitmap = Bitmap.createBitmap(w, h, Bitmap.Config.ARGB_8888);
// 将上面的二维码颜色数组传入,生成图片颜色
bitmap.setPixels(data, 0, w, 0, 0, w, h);
return bitmap;
} catch (Exception e) {
e.printStackTrace();
}
return null;
* 创建QR二维码图片方法
*/
private Bitmap createQRCodeBitmap(String url) {
// 用于设置QR二维码参数
Hashtable<EncodeHintType, Object> qrParam = new Hashtable<EncodeHintType, Object>();
// 设置QR二维码的纠错级别——这里选择最高H级别
qrParam.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H);
// 设置编码方式
qrParam.put(EncodeHintType.CHARACTER_SET, "UTF-8");
// 设定二维码里面的内容,这里我采用我博客的地址
// String cont = "http://blog.csdn.net/fengltxx";
// 生成QR二维码数据——这里只是得到一个由true和false组成的数组
// 参数顺序分别为:编码内容url地址,编码类型,生成图片宽度,生成图片高度,设置参数
try {
BitMatrix bitMatrix = new MultiFormatWriter().encode(url,
BarcodeFormat.QR_CODE, 180, 180, qrParam);
// 开始利用二维码数据创建Bitmap图片,分别设为黑白两色
int w = bitMatrix.getWidth();
int h = bitMatrix.getHeight();
int[] data = new int[w * h];
for (int y = 0; y < h; y++) {
for (int x = 0; x < w; x++) {
if (bitMatrix.get(x, y))
data[y * w + x] = 0xff000000;// 黑色
else
data[y * w + x] = -1;// -1 相当于0xffffffff 白色
}
}
// 创建一张bitmap图片,采用最高的效果显示
Bitmap bitmap = Bitmap.createBitmap(w, h, Bitmap.Config.ARGB_8888);
// 将上面的二维码颜色数组传入,生成图片颜色
bitmap.setPixels(data, 0, w, 0, 0, w, h);
return bitmap;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
0 0
- 二维码的生成算法
- 二维码生成算法
- ObjectiveC 二维码生成算法
- googlechart的二维码生成
- iOS二维码的生成
- 二维码的生成
- 二维码生成的记载
- 二维码的服务端生成
- 二维码的生成
- 二维码的扫描、生成
- 生成二维码的工具
- 二维码的生成
- 二维码的生成
- 二维码的生成
- 原生二维码的生成
- 二维码的生成
- 二维码的生成
- 二维码的生成
- 第十三周 项目4 --Floyd算法的验证
- socket编程(二)TCP cpp
- 硬件指令集急速ARMV7
- 原码、反码、补码
- (3/4 OK) 在VirtualBox中运行 cm-13-kiwi (华为 荣耀 5X) - 移植cm-13-kiwi
- 二维码的生成算法
- Android热修复“AndFix”中文解析(使用说明)
- nefuoj 14 蟠桃记
- linux i2c驱动注册流程
- leetcode--n_queens&&n_queens_II
- AD入门
- 物联网需要什么样的应用开发语言?
- 敌兵布阵
- Android Studio Git版本管理 配置