Android Zxing二维码扫描图片拉伸问题的解决方法
还是这个接手项目,二维码扫描集成的是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使用VideoView播放本地视频和网络视频的方法
本文将讲解如何使用Android视频播放器VideoView来播放本地视频和网络视频,实现起来还是比较简单的,有需要的可以参考借鉴。2016-08-08Android中TelephonyManager类的用法案例详解
这篇文章主要介绍了Android中TelephonyManager类的用法,以获取Android手机硬件信息为例详细分析了TelephonyManager类的使用技巧,需要的朋友可以参考下2015-09-09Android开发中记一个SwipeMenuListView侧滑删除错乱的Bug
这篇文章主要介绍了Android开发中记一个SwipeMenuListView侧滑删除错乱的Bug的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下2016-09-09
最新评论