程序包 com.king.zxing

类 DecodeConfig


  • public class DecodeConfig
    extends java.lang.Object
    解码配置:主要用于在扫码识别时,提供一些配置,便于扩展。通过配置可决定内置分析器的能力,从而间接的控制并简化扫码识别的流程

    设置解码 setHints(Map)内置的一些解码可参见如下:

    • 字段详细资料

      • DEFAULT_AREA_RECT_RATIO

        public static final float DEFAULT_AREA_RECT_RATIO
        另请参阅:
        常量字段值
    • 构造器详细资料

      • DecodeConfig

        public DecodeConfig()
    • 方法详细资料

      • getHints

        public java.util.Map<com.google.zxing.DecodeHintType,​java.lang.Object> getHints()
      • setHints

        public DecodeConfig setHints​(java.util.Map<com.google.zxing.DecodeHintType,​java.lang.Object> hints)
        设置解码
        参数:
        hints - DecodeFormatManager 内置的一些解码可参见如下:
        返回:
      • isSupportLuminanceInvert

        public boolean isSupportLuminanceInvert()
        是否支持识别反色码,黑白颜色反转
        返回:
      • setSupportLuminanceInvert

        public DecodeConfig setSupportLuminanceInvert​(boolean supportLuminanceInvert)
        设置是否支持识别反色码,黑白颜色反转
        参数:
        supportLuminanceInvert - 默认为false,想要增强支持扫码识别反色码时可使用,相应的也会增加性能消耗。
        返回:
      • isSupportVerticalCode

        public boolean isSupportVerticalCode()
        是否支持扫垂直的条码
        返回:
      • setSupportVerticalCode

        public DecodeConfig setSupportVerticalCode​(boolean supportVerticalCode)
        设置是否支持扫垂直的条码
        参数:
        supportVerticalCode - 默认为false,想要增强支持扫码识别垂直的条码时可使用,相应的也会增加性能消耗。
        返回:
      • isMultiDecode

        public boolean isMultiDecode()
        是否支持使用多解码
        返回:
      • setMultiDecode

        public DecodeConfig setMultiDecode​(boolean multiDecode)
        是否支持使用多解码
        参数:
        multiDecode - 默认为true
        返回:
      • isSupportLuminanceInvertMultiDecode

        public boolean isSupportLuminanceInvertMultiDecode()
        是否支持识别反色码(条码黑白颜色反转的码)使用多解码
        返回:
      • setSupportLuminanceInvertMultiDecode

        public DecodeConfig setSupportLuminanceInvertMultiDecode​(boolean supportLuminanceInvertMultiDecode)
        设置是否支持识别反色码(条码黑白颜色反转的码)使用多解码
        参数:
        supportLuminanceInvertMultiDecode - 默认为false,想要增强支持扫码识别反色码时可使用,相应的也会增加性能消耗。
        返回:
      • isSupportVerticalCodeMultiDecode

        public boolean isSupportVerticalCodeMultiDecode()
        是否支持垂直的条码,使用多解码
        返回:
      • setSupportVerticalCodeMultiDecode

        public DecodeConfig setSupportVerticalCodeMultiDecode​(boolean supportVerticalCodeMultiDecode)
        设置是否支持垂直的条码,使用多解码
        参数:
        supportVerticalCodeMultiDecode - 默认为false,想要增强支持扫码识别垂直的条码时可使用,相应的也会增加性能消耗。
        返回:
      • getAnalyzeAreaRect

        public android.graphics.Rect getAnalyzeAreaRect()
        需要分析识别区域
        返回:
      • setAnalyzeAreaRect

        public DecodeConfig setAnalyzeAreaRect​(android.graphics.Rect analyzeAreaRect)
        设置需要分析识别区域,优先级比识别区域比例高,当设置了指定的分析区域时,识别区域比例和识别区域偏移量相关参数都将无效
        参数:
        analyzeAreaRect - 识别区域可设置的方式有如下几种: setFullAreaScan(boolean) 设置是否支持全区域扫码识别,优先级比识别区域高 setAnalyzeAreaRect(Rect) 设置需要分析识别区域,优先级比识别区域比例高,当设置了指定的分析区域时,识别区域比例和识别区域偏移量相关参数都将无效 setAreaRectRatio(float) 设置识别区域比例,默认DEFAULT_AREA_RECT_RATIO,设置的比例最终会在预览区域裁剪基于此比例的一个矩形进行扫码识别,优先级最低 因为PreviewView的预览区域是经过裁剪的,所以这里的区域并不是用户所能预览到的区域,而是指Camera预览的真实区域, 您还可以通过CameraScan.setCameraConfig(CameraConfig)去自定义配置CameraConfig的配置信息控制预览相关配置信息 即判定区域分析的优先级顺序为:setFullAreaScan(boolean) -> setAnalyzeAreaRect(Rect) -> setAreaRectRatio(float)
        返回:
      • isFullAreaScan

        public boolean isFullAreaScan()
        是否支持全区域扫码识别
        返回:
      • setFullAreaScan

        public DecodeConfig setFullAreaScan​(boolean fullAreaScan)
        设置是否支持全区域扫码识别,优先级比识别区域高
        参数:
        fullAreaScan - 默认为true 识别区域可设置的方式有如下几种: setFullAreaScan(boolean) 设置是否支持全区域扫码识别,优先级比识别区域高 setAnalyzeAreaRect(Rect) 设置需要分析识别区域,优先级比识别区域比例高,当设置了指定的分析区域时,识别区域比例和识别区域偏移量相关参数都将无效 setAreaRectRatio(float) 设置识别区域比例,默认DEFAULT_AREA_RECT_RATIO,设置的比例最终会在预览区域裁剪基于此比例的一个矩形进行扫码识别,优先级最低 因为PreviewView的预览区域是经过裁剪的,所以这里的区域并不是用户所能预览到的区域,而是指Camera预览的真实区域, 您还可以通过CameraScan.setCameraConfig(CameraConfig)去自定义配置CameraConfig的配置信息控制预览相关配置信息 即判定区域分析的优先级顺序为:setFullAreaScan(boolean) -> setAnalyzeAreaRect(Rect) -> setAreaRectRatio(float)
        返回:
      • getAreaRectRatio

        public float getAreaRectRatio()
        识别区域比例,默认DEFAULT_AREA_RECT_RATIO,设置的比例最终会在预览区域裁剪基于此比例的一个矩形进行扫码识别
        返回:
      • setAreaRectRatio

        public DecodeConfig setAreaRectRatio​(@FloatRange(from=0.5,to=1.0)
                                             float areaRectRatio)
        设置识别区域比例,默认DEFAULT_AREA_RECT_RATIO,设置的比例最终会在预览区域裁剪基于此比例的一个矩形进行扫码识别,优先级最低
        参数:
        areaRectRatio - 识别区域可设置的方式有如下几种: setFullAreaScan(boolean) 设置是否支持全区域扫码识别,优先级比识别区域高 setAnalyzeAreaRect(Rect) 设置需要分析识别区域,优先级比识别区域比例高,当设置了指定的分析区域时,识别区域比例和识别区域偏移量相关参数都将无效 setAreaRectRatio(float) 设置识别区域比例,默认DEFAULT_AREA_RECT_RATIO,设置的比例最终会在预览区域裁剪基于此比例的一个矩形进行扫码识别,优先级最低 因为PreviewView的预览区域是经过裁剪的,所以这里的区域并不是用户所能预览到的区域,而是指Camera预览的真实区域, 您还可以通过CameraScan.setCameraConfig(CameraConfig)去自定义配置CameraConfig的配置信息控制预览相关配置信息 即判定区域分析的优先级顺序为:setFullAreaScan(boolean) -> setAnalyzeAreaRect(Rect) -> setAreaRectRatio(float)
        返回:
      • getAreaRectVerticalOffset

        public int getAreaRectVerticalOffset()
        识别区域垂直方向偏移量,支持负数,大于0时,居中心向下偏移,小于0时,居中心向上偏移
        返回:
      • setAreaRectVerticalOffset

        public DecodeConfig setAreaRectVerticalOffset​(int areaRectVerticalOffset)
        设置识别区域垂直方向偏移量,支持负数,大于0时,居中心向下偏移,小于0时,居中心向上偏移
        参数:
        areaRectVerticalOffset -
        返回:
      • getAreaRectHorizontalOffset

        public int getAreaRectHorizontalOffset()
        识别区域水平方向偏移量,支持负数,大于0时,居中心向右偏移,小于0时,居中心向左偏移
        返回:
      • setAreaRectHorizontalOffset

        public DecodeConfig setAreaRectHorizontalOffset​(int areaRectHorizontalOffset)
        设置识别区域水平方向偏移量,支持负数,大于0时,居中心向右偏移,小于0时,居中心向左偏移
        参数:
        areaRectHorizontalOffset -
        返回:
      • toString

        public java.lang.String toString()
        覆盖:
        toString 在类中 java.lang.Object