Android Zxing二维码扫描图片拉伸问题的解决方法

Delfina ·
更新时间:2024-11-13
· 541 次阅读

还是这个接手项目,二维码扫描集成的是zxing,扫描界面的图像有明显的拉伸变形。

这种问题,根据以往的经验,一般是x,y轴错位引起的,处理好x,y轴的问题,一般可以解决问题。

由于这个问题,之前有很多人遇到,并分享在网上了,所以,我这里也就不需要重复造轮子了。

这里看了一篇博客:Android Zxing二维码扫描图片拉伸,用了上面的办法,

成功的解决图片拉伸问题。

解决方法如下:

修改CameraConfigurationManager.Java里面的initFromCameraParameters方法:

void initFromCameraParameters(Camera camera) { Camera.Parameters parameters = camera.getParameters(); previewFormat = parameters.getPreviewFormat(); previewFormatString = parameters.get("preview-format"); Log.d(TAG, "Default preview format: " + previewFormat + '/' + previewFormatString); WindowManager manager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); Display display = manager.getDefaultDisplay(); screenResolution = new Point(display.getWidth(), display.getHeight()); Log.d(TAG, "Screen resolution: " + screenResolution); //added Point screenResolutionForCamera = new Point(); screenResolutionForCamera.x = screenResolution.x; screenResolutionForCamera.y = screenResolution.y; // preview size is always something like 480*320, other 320*480 if (screenResolution.x < screenResolution.y) { screenResolutionForCamera.x = screenResolution.y; screenResolutionForCamera.y = screenResolution.x; } cameraResolution = getCameraResolution(parameters, screenResolutionForCamera); // cameraResolution = getCameraResolution(parameters, screenResolution); Log.d(TAG, "Camera resolution: " + screenResolution); } 您可能感兴趣的文章:Android上使用ZXing识别条形码与二维码的方法Android开发框架之自定义ZXing二维码扫描界面并解决取景框拉伸问题Android基于google Zxing实现各类二维码扫描效果Android项目实战(二十八):使用Zxing实现二维码及优化实例Android基于google Zxing实现二维码的生成Android基于zxing的二维码(网格)扫描 仿支付宝网格扫描Android利用ZXing扫描二维码的实例代码解析Android中使用ZXing生成二维码(支持添加Logo图案)Android 基于google Zxing实现二维码、条形码扫描,仿微信二维码扫描效果(推荐)Android中利用zxing实现自己的二维码扫描识别详解



zxing二维码 方法 图片 zxing 拉伸 Android

需要 登录 后方可回复, 如果你还没有账号请 注册新账号