`
yanyanquan
  • 浏览: 451115 次
  • 性别: Icon_minigender_1
  • 来自: 江门
社区版块
存档分类
最新评论

Android ZXing改横屏识别为竖屏识别[转]

 
阅读更多

解决方法:

1.在DecodeHandler.java中,修改decode方法
  PlanarYUVLuminanceSource source = CameraManager.get().buildLuminanceSource(data, width, height);

    byte[] rotatedData = new byte[data.length];
    for (int y = 0; y < height; y++) {
        for (int x = 0; x < width; x++)
            rotatedData[x * height + height - y - 1] = data[x + y * width];
    }
    int tmp = width; // Here we are swapping, that's the difference to #11
    width = height;
    height = tmp;
    
    PlanarYUVLuminanceSource source = CameraManager.get().buildLuminanceSource(rotatedData, width, height);

2.在CameraManager.java中,注释代码:
            // rect.left = rect.left * cameraResolution.x / screenResolution.x;
            // rect.right = rect.right * cameraResolution.x / screenResolution.x;
            // rect.top = rect.top * cameraResolution.y / screenResolution.y;
            // rect.bottom = rect.bottom * cameraResolution.y / screenResolution.y;
修改为
            rect.left = rect.left * cameraResolution.y / screenResolution.x;
            rect.right = rect.right * cameraResolution.y / screenResolution.x;
            rect.top = rect.top * cameraResolution.x / screenResolution.y;
            rect.bottom = rect.bottom * cameraResolution.x / screenResolution.y;

3.在CameraConfigurationManager.java中,在setDesiredCameraParameters方法中添加一句
  camera.setDisplayOrientation(90);

4.在AndroidManifest.xml中,把Activity的属性android:screenOrientation="landscape"
改为
  android:screenOrientation="portrait"

分享到:
评论

相关推荐

    Android zxing3.2完美横屏改竖屏

    本教程将深入探讨如何将ZXing 3.2版本从默认的横屏模式改为竖屏模式,并保持良好的用户体验,同时保证识别速度。 首先,我们需要理解ZXing的扫描界面为何默认为横屏。这是因为横屏模式通常可以提供更广阔的视野,...

    ZXing1.6改横屏识别为竖屏识别

    总之,将ZXing1.6从横屏识别改为竖屏识别是一个涉及Android相机API和ZXing库内部逻辑的工程,需要对Android开发和ZXing有深入的理解。不过,一旦完成,用户就能在竖屏模式下更方便地使用二维码扫描功能。

    Android Zxing 转换竖屏扫描且提高识别率的方法

    Android Zxing 转换竖屏扫描且提高识别率的方法是指在 Android 平台上使用 Zxing 库时,如何将默认的横屏扫描转换为竖屏扫描,并且提高扫描识别率的方法。 转竖屏步骤: 1. 在 AndroidManifest.xml 文件中,把 ...

    Android Zxing 扫描条码实现竖屏模式

    通常,Android设备的默认相机预览模式是横屏,但我们的需求是竖屏模式。因此,我们需要在`CameraManager`中调整相机的参数,确保预览画面适应竖屏显示。 `CameraManager.java`中的关键部分在于设置相机的参数。这...

    zxing 竖屏完美解决

    标题“zxing 竖屏完美解决”指的是在使用ZXing库时,针对Android设备竖屏模式下,二维码图片显示和处理的一个优化问题。在某些情况下,当设备处于竖屏模式时,二维码的显示可能会受到影响,例如大小不适应屏幕或者...

    zxing竖屏二维码扫描

    在默认情况下,ZXing库设计的扫描界面可能更适合横屏使用,扫描框较小,这可能导致在竖屏模式下用户需要将手机非常靠近二维码才能正确扫描,这并不符合用户的使用习惯。为了改善这种情况,我们需要对ZXing的扫描界面...

    android二维码扫描竖屏,横屏(竖屏简化代码,横屏google源码)

    本篇将详细解析标题和描述中提到的"android二维码扫描竖屏,横屏"的相关知识点,包括竖屏简化版和横屏Google源码的应用。 1. **二维码扫描原理** 二维码扫描主要依赖于二维码解码库,例如ZXing(Zebra Crossing)库...

    二维码扫描Zxing横竖屏都支持,还可以切换激光线

    本项目着重介绍如何利用Zxing实现一个横竖屏都支持且可以切换激光线的二维码扫描功能。 首先,我们来看Zxing的基本概念。Zxing,全称“Zebra Crossing”,由Google开发,主要用于读取、生成和解码各种条形码和...

    android二维码横屏竖屏

    在Android平台上,开发一款支持二维码扫描的应用时,通常会遇到横屏和竖屏两种设备方向的问题。本主题主要探讨如何在Android应用中处理这两种屏幕方向,确保二维码扫描功能的正常运行。 首先,Android系统允许应用...

    Zxing最新demo【精简支持横竖屏】

    在给定的"Zxing最新demo【精简支持横竖屏】"中,我们关注的是2015年5月更新的ZXing库的精简版,特别优化了横竖屏切换的配置,这为开发者提供了更灵活的应用场景。 1. **ZXing库基础** ZXing库最初由Google开发,...

    安卓zxing扫描二维码竖屏精简版demo

    通常,扫描功能在横屏模式下更为常见,但考虑到许多设备用户更习惯竖屏操作,这个竖屏精简版的Demo具有很好的实用价值。 描述中提到,“看到晚上很多关于扫描二维码的demo,但是很多都不能用,今天上传一个精简版能...

    Zxing二维码识别

    在Android应用中,横屏和竖屏的切换是常见的需求。Zxing扫描界面需要适应这两种屏幕方向。在AndroidManifest.xml中,可以声明Activity支持横屏和竖屏模式,同时在布局文件中设计响应的布局。在代码中,可以通过重写`...

    ZXing竖屏简化版

    1. **竖屏模式**:原版ZXing库通常是设计为横屏使用的,因为这更符合大多数摄像设备的默认方向。然而,许多现代智能手机用户更倾向于使用竖屏模式。此简化版已经针对竖屏进行了适配,使得在手机或平板的竖向持握时也...

    xe 10 zxing扫描二维码和识别图片二维码及其优化策略.pdf

    - 默认横向扫描:需要修改算法,以支持竖屏扫描。 - 自定义扫描界面困难:提供更灵活的界面设计和配置方式。 图形拉伸问题是一个常见的技术挑战,原因在于Android手机屏幕分辨率和尺寸的多样性。在进行二维码扫描时...

    二维码扫描竖屏删除不用代码,zxing3.2.1

    "竖屏删除不用代码"这部分描述可能是指在ZXing中,开发者可以很容易地实现竖屏模式下的二维码扫描,并且在不需要额外编码的情况下移除某些默认行为或元素。这通常通过配置ZXing的IntentIntegrator类实现,该类提供了...

    android 二维码扫描 支持横竖屏切换Demo

    ZXing的核心库`core`提供了条码解码能力,而`zxing-android-embedded`则为Android设备封装了相机扫描的接口,简化了在Android应用中集成扫码的功能。 为了实现横竖屏切换,我们需要关注Activity的生命周期管理和...

    android 实现竖屏二维码扫描

    使用Android模拟器或实际设备进行测试,确保在竖屏模式下能正确识别二维码。同时,对各种光照条件和二维码位置进行测试,以增强扫描的稳定性和准确性。 9. **源码分析**: `ZXingDemo01`可能是项目中的一个示例...

    二维码扫描,横屏竖屏都支持

    在本文中,我们将深入探讨二维码扫描的工作原理、横屏与竖屏支持的实现方式,以及如何在应用程序中集成这一功能。 一、二维码工作原理 二维码,全称为“Quick Response Code”,即快速响应码,是一种二维条形码。它...

    Android-Zxing-master.zip

    本项目"Android-Zxing-master"是针对ZXing库进行的二次开发,特别优化了在Android手机上的使用,以满足竖屏扫描二维码的需求,并提供了自定义扫描框与扫描线样式的可能性,同时具备创建二维码和识别图片中二维码的...

Global site tag (gtag.js) - Google Analytics