LBXScanViewStyle.swift 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. //
  2. // LBXScanViewStyle.swift
  3. // swiftScan
  4. //
  5. // Created by xialibing on 15/12/8.
  6. // Copyright © 2015年 xialibing. All rights reserved.
  7. //
  8. import UIKit
  9. /// 扫码区域动画效果
  10. public enum LBXScanViewAnimationStyle {
  11. case LineMove // 线条上下移动
  12. case NetGrid // 网格
  13. case LineStill // 线条停止在扫码区域中央
  14. case None // 无动画
  15. }
  16. /// 扫码区域4个角位置类型
  17. public enum LBXScanViewPhotoframeAngleStyle {
  18. case Inner // 内嵌,一般不显示矩形框情况下
  19. case Outer // 外嵌,包围在矩形框的4个角
  20. case On // 在矩形框的4个角上,覆盖
  21. }
  22. public struct LBXScanViewStyle {
  23. // MARK: - 中心位置矩形框
  24. /// 是否需要绘制扫码矩形框,默认YES
  25. public var isNeedShowRetangle = true
  26. /// 默认扫码区域为正方形,如果扫码区域不是正方形,设置宽高比
  27. public var whRatio: CGFloat = 1.0
  28. /// 矩形框(视频显示透明区)域向上移动偏移量,0表示扫码透明区域在当前视图中心位置,如果负值表示扫码区域下移
  29. public var centerUpOffset: CGFloat = 44
  30. /// 矩形框(视频显示透明区)域离界面左边及右边距离,默认60
  31. public var xScanRetangleOffset: CGFloat = 60
  32. /// 矩形框线条颜色,默认白色
  33. public var colorRetangleLine = UIColor.white
  34. //MARK: - 矩形框(扫码区域)周围4个角
  35. /// 扫码区域的4个角类型
  36. public var photoframeAngleStyle = LBXScanViewPhotoframeAngleStyle.Outer
  37. /// 4个角的颜色
  38. public var colorAngle = UIColor(red: 0.0, green: 167.0 / 255.0, blue: 231.0 / 255.0, alpha: 1.0)
  39. /// 扫码区域4个角的宽度和高度
  40. public var photoframeAngleW: CGFloat = 24.0
  41. public var photoframeAngleH: CGFloat = 24.0
  42. /// 扫码区域4个角的线条宽度,默认6,建议8到4之间
  43. public var photoframeLineW: CGFloat = 6
  44. //MARK: - 动画效果
  45. /// 扫码动画效果:线条或网格
  46. public var anmiationStyle = LBXScanViewAnimationStyle.LineMove
  47. /// 动画效果的图像,如线条或网格的图像
  48. public var animationImage: UIImage?
  49. //MARK: - 非识别区域颜色, 默认 RGBA (0,0,0,0.5),范围(0--1)
  50. public var color_NotRecoginitonArea = UIColor(red: 0.0, green: 0.0, blue: 0.0, alpha: 0.5)
  51. public init() { }
  52. }