Zxing二维码扫描生成
来源:互联网 发布:wpf listbox 数据绑定 编辑:程序博客网 时间:2024/05/17 00:49
1.导入 zxinglib包
//扫描按钮
public voidscannner(View view){
Intent openCamera =newIntent(this,CaptureActivity.class);
startActivityForResult(openCamera,0);
}
//生成二维码按钮
public voidgener_pic(View view){
String contentString ="22222";
if(!contentString.equals("")) {
//根据字符串生成二维码图片并显示在界面上,第二个参数为图片的大小(350*350)
Bitmap qrCodeBitmap =null;
try{
qrCodeBitmap = BitmapUtils.create2DCode(contentString);
}catch(WriterException e) {
e.printStackTrace();
}
gen_id.setImageBitmap(qrCodeBitmap);
}
}
//扫描回传
@Override
protected voidonActivityResult(intrequestCode, intresultCode,Intent data) {
super.onActivityResult(requestCode,resultCode,data);
if(resultCode==RESULT_OK){
Bundle bundle = data.getExtras();
String result = bundle.getString("result");
result_button_view.setText(result);
// gen_id.setImageBitmap((Bitmap) data.getParcelableExtra("bitmap"));
}
// 通过像素数组生成bitmap,具体参考api
bitmap.setPixels(pixels,0,width,0,0,width,height);
下面添加:
if(logoBm !=null) {
bitmap =addLogo(bitmap,logoBm);
}
在BitmapUtils中添加方法
/**
* 在二维码中间添加Logo图案
*/
private staticBitmapaddLogo(Bitmap src,Bitmap logo) {
if(src ==null) {
return null;
}
if(logo ==null) {
returnsrc;
}
//获取图片的宽高
intsrcWidth = src.getWidth();
intsrcHeight = src.getHeight();
intlogoWidth = logo.getWidth();
intlogoHeight = logo.getHeight();
if(srcWidth ==0 || srcHeight ==0) {
return null;
}
if(logoWidth ==0 || logoHeight ==0) {
returnsrc;
}
//logo大小为二维码整体大小的1/5
floatscaleFactor = srcWidth *1.0f/ 5 / logoWidth;
Bitmap bitmap = Bitmap.createBitmap(srcWidth,srcHeight,Bitmap.Config.ARGB_8888);
try{
Canvas canvas =newCanvas(bitmap);
canvas.drawBitmap(src,0,0, null);
canvas.scale(scaleFactor,scaleFactor,srcWidth /2,srcHeight /2);
canvas.drawBitmap(logo,(srcWidth - logoWidth) /2,(srcHeight - logoHeight) /2, null);
canvas.save(Canvas.ALL_SAVE_FLAG);
canvas.restore();
}catch(Exception e) {
bitmap =null;
e.getStackTrace();
}
returnbitmap;
}
阅读全文
0 0
- Zxing二维码扫描生成
- Zxing二维码、条形码扫描/生成
- Android生成二维码和扫描二维码zxing
- 使用ZXing扫描二维码和生成二维码
- Android二维码的扫描和生成(ZXing)
- zxing框架扫描和生成二维码
- Zxing实现二维码生成,扫描代码段
- 使用ZXing扫描和生成二维码
- 二维码生成、扫描、图片识别(Zxing)
- Android zxing,轻松实现二维码扫描、生成
- 扫描生成二维码 添加依赖zxing
- ZXing二维码、条形码生成和扫描
- 基于Zxing的二维码生成和二维码扫描
- Android-扫描二维码、生成二维码(Zxing库)
- 基于Zxing的二维码生成和二维码扫描
- Android基于Zxing实现二维码,条形码扫描和生成二维码
- 基于Zxing的二维码生成和二维码扫描
- android 使用开源库zxing生成二维码,扫描二维码
- Jquery 获取对象的几种方式介绍
- 每日积累(20170609-day-24)(Qt designer 界面 最小化及最大化按钮)
- 自定义Android扇形的加载ProgressBar
- php array_column() 返回输入数组中某个单一列的值。
- 无法启动MYSQL服务”1067 进程意外终止”解决办法
- Zxing二维码扫描生成
- linux 内核对vlan 的接收
- MVP
- Could not find a valid gem 'compass' (>= 0) in any repository compass安装失败解决方案
- 【JAVA WEB教程】jsp环境搭建(eclipse)【详细+图文】
- Elasticsearch全方面优化点
- Linux进程间通信(3)--信号量
- 学习淘淘商城第八十九课(单点登录之通过token获取用户信息)
- MVC超链接