zoukankan      html  css  js  c++  java
  • ZXing for Android 修改为竖屏模式

    zxing github连接:https://github.com/zxing/zxing

    以下为修改方法

    Step 1: Add following lines to rotate data before buildLuminanceSource(..) in decode(byte[] data, int width, int height)

    DecodeHandler.java:

    byte[] rotatedData =newbyte[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; width = height; height = tmp;

    PlanarYUVLuminanceSource source = activity.getCameraManager().buildLuminanceSource(rotatedData, width, height);

    Step 2: Modify getFramingRectInPreview().

    CameraManager.java

    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;

    Step 3: Disable the check for Landscape Mode in initFromCameraParameters(...)

    CameraConfigurationManager.java

    //remove the following (下面代码新版本,应该是木有了)
    if(width < height){Log.i(TAG,"Display reports portrait orientation; assuming this is incorrect");
     int temp = width; width = height; height = temp;
    }

    Step 4: Add following line to rotate camera insetDesiredCameraParameters(...)

    CameraConfigurationManager.java

    camera.setDisplayOrientation(90);

    Step 5: Do not forget to set orientation of activity to portrait. I.e: manifest

  • 相关阅读:
    Django 数据库常用字段类型、选项参数、外键约束
    Django 项目基础配置
    MySQL连接列值
    SQL 限制查询结果
    python+appium+真机测试
    P3089 [USACO13NOV]POGO的牛Pogo-Cow
    P2889 [USACO07NOV]挤奶的时间Milking Time
    P2679 子串
    P3932 浮游大陆的68号岛
    P1514 引水入城
  • 原文地址:https://www.cnblogs.com/maxinliang/p/3735579.html
Copyright © 2011-2022 走看看