-----------------------------------2018.6.1更新---------------------------------------

附上github地址: https://github.com/Liiking/QRScanDemo

-----------------------------------以下为原文内容---------------------------------------

在集成zxing二维码时经常会遇到各种问题,比较常见的有下面两个。

1.预览拉伸的问题

原因:预览尺寸和surface view不一致。

解决方式:

针对于扫描时,二维码拉伸变形的问题,是因为zxing默认是针对横屏扫描的,所以,我们只需要改变x,y的计算,即横纵轴即可。此时,我们需要找到CameraConfigurationManager类:

找到findBestPreviewSizeValue方法:

将newDiff的变量计算代码改成如下:

int newDiff=Math.abs(newY - screenResolution.x) + Math.abs(newX - screenResolution.y);

2.近距离扫描二维码扫描不出

解决方式:

找到CameraConfigurationManager类的setDesiredCameraParameters(Camera camera)方法,将其中的代码注释,然后添加如下代码:

Camera.Parameters parameters = camera.getParameters();
List<Camera.Size> supportedPreviewSizes = parameters.getSupportedPreviewSizes();
int position = 0;
if(supportedPreviewSizes.size() > 2){position = supportedPreviewSizes.size() / 2 + 1;// supportedPreviewSizes.get();
}else {position = supportedPreviewSizes.size() / 2;
}int width = supportedPreviewSizes.get(position).width;
int height = supportedPreviewSizes.get(position).height;
camera.setDisplayOrientation(90);
cameraResolution.x = width;
cameraResolution.y = height;
parameters.setPreviewSize(width, height);
setFlash(parameters);
setZoom(parameters);
camera.setParameters(parameters);

参考博文:

http://blog.csdn.net/xiaanming/article/details/10163203

http://m.blog.csdn.net/article/details?id=51683125

感谢作者,完美解决了问题。

为方便以后使用,整理出来一个demo,欢迎大家指正。

demo地址:

http://download.csdn.net/download/qq_1991/9709334

demo运行效果:

zxing二维码扫描预览变形的解决方案相关推荐

  1. 自定义ZXing二维码扫描界面并解决取景框拉伸等问题

    自定义ZXing二维码扫描界面并解决取景框拉伸等问题 参考文章: (1)自定义ZXing二维码扫描界面并解决取景框拉伸等问题 (2)https://www.cnblogs.com/tommylemon ...

  2. Android 集成zxing二维码扫描、自定义

    项目主要有zxing的基本使用,包含扫描回调.连续扫描.自定义扫描框: 一.依赖库 implementation 'com.journeyapps:zxing-android-embedded:4.3 ...

  3. zxing 二维码扫描优化

    先罗列优化点: 1.优化扫描精度 (增加解析成功率) hints.put(DecodeHintType.TRY_HARDER, Boolean.TRUE); 2.生成图片(用于被解析)时不剪切图片(增 ...

  4. Android 基于Zxing二维码扫描的光速实现

    Android 十分钟光速实现二维码扫描 前言 在项目中要使用到二维码的相关内容,我们第一时间想到的是使用大名鼎鼎的zxing或者ZBar开源框架: github-zxing官方库的地址 github ...

  5. Android Zxing二维码扫描优化

    关于Zxing的使用,网上有大量优秀的文章讲解,本文不再叙述. 用过Zxing的童鞋都知道Zxing扫描识别率较低,速度较慢.这里介绍一个第三方库,github地址为: https://github. ...

  6. Android项目如何集成ZXing二维码扫描功能

    最近的项目有二维码扫描跳转网页的需求,就是利用手机摄像头,扫描并解析二维码内容,内容由生成二维码的时候定义,我项目现在的需求就是一个包含了网址的二维码,网上有生成二维码的工具,也可以自己开发一个. 搜 ...

  7. zxing二维码扫描

    最近项目中要做一个二维码扫描的功能,之前用过,但是实现的效果不太好,通过查询,找到了一个比较好用的 implementation 'cn.bingoogolapple:bga-qrcode-zxing ...

  8. 关于ZXing二维码扫描的时候偶然出现数字问题

    今天在测试项目的时候发现,在多次扫描同一个生成二维码的时候,小米手机有机会偶然出现扫描的结果全是数字的情况,暂时没有想到到的解决方法,只能是在扫描出结果之后,判断下是否全是数字,如果是的话继续开始扫描 ...

  9. ZXING 二维码扫描

    根据 原git hub 地址 https://github.com/bingoogolapple/BGAQRCode-Android 稍作修改 ZXING扫描二维码的问题: 1.Google Zxin ...

最新文章

  1. 一种可以穿透还原卡和还原软件的代码
  2. Python 多进程、多线程启动
  3. 带参数二维码如何跟踪用户来自哪个推广人员?
  4. Image Lab 6 for MacOS WIN 图像分析软件下载
  5. 重构机房收费系统(二)
  6. python编程第四版_清华编程教授强力推荐《Python编程》,指导你如何学习python
  7. Google Guava:您永远不会知道的5件事
  8. docker-compose安装elk7.1.1版本
  9. 学位论文检测系统的说明与修改
  10. 二十四种设计模式:责任链模式(Chain of Responsibility Pattern)
  11. 【PostgreSQL-9.6.3】LOG: unrecognized configuration parameter dynamic_shared_memory_type
  12. java访问修饰符_Java访问修饰符
  13. c2065c语言错误,C语言常见错误
  14. 【Leetcode_easy】1103. Distribute Candies to People
  15. 【从0到1搭建LoRa物联网】12、LoRa网关与平台通讯协议
  16. 想考华为HCIA,但不知道选择什么方向,点进来~
  17. 创建一个员工类(Employee),其中包括:1) 4个私有属性:员工姓名(name)、员工年龄(age)、员工职位(position)、工资(salary)
  18. 太火爆了!这一款小游戏火到把服务器搞瘫痪,合成大西瓜
  19. 路由器OpenWrt如何脱机(离线)下载BT文件
  20. Windows Error Code

热门文章

  1. 丁磊:网易将推智能手机 售价千元以下
  2. 和黄医药上海张江创新药生产基地开工,产能可达苏州基地五倍
  3. Squeeze-and-Excitation Networks个人理解
  4. 怎样去除人身体内的湿气
  5. 恋爱、解密、沙盒,你喜欢的元素全都有,超有趣的手机游戏推荐!
  6. 不知道这是FreeTextBox还是五笔加加的bug
  7. ctfhub技能书+历年真题学习笔记(详解)
  8. Linux/unix命令之文件查找和文件管理
  9. pikachu靶场越权漏洞实战
  10. 域名服务dns是哪种计算机服务,DNS是什么 DNS服务器是什么【详细介绍】