SLMosaicView.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. //
  2. // SLMosaicView.h
  3. // DarkMode
  4. //
  5. // Created by wsl on 2019/10/25.
  6. // Copyright © 2019 wsl. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. NS_ASSUME_NONNULL_BEGIN
  10. /// 马赛克类型
  11. typedef NS_ENUM(NSUInteger, SLMosaicType) {
  12. /// 方块马赛克
  13. SLMosaicTypeSquare,
  14. /// 画笔涂抹
  15. SLMosaicTypePaintbrush
  16. };
  17. /// 马赛克 画板
  18. @interface SLMosaicView : UIView
  19. /// 马赛克类型
  20. @property (nonatomic, assign) SLMosaicType mosaicType;
  21. /// 马赛克方块大小 默认15
  22. @property (nonatomic, assign) CGFloat squareWidth;
  23. /// 画笔涂抹大小 默认 (50, 50)
  24. @property (nonatomic, assign) CGSize paintSize;
  25. /// 正在涂抹
  26. @property (nonatomic, readonly) BOOL isBrushing;
  27. /// 开始涂抹
  28. @property (nonatomic, copy) void(^brushBegan)(void);
  29. /// 涂抹结束
  30. @property (nonatomic, copy) void(^brushEnded)(void);
  31. ///某个点的颜色
  32. @property (nonatomic, copy) UIColor *(^brushColor)(CGPoint point);
  33. /// 数据
  34. @property (nonatomic, strong) NSDictionary *data;
  35. /// 是否可撤销
  36. - (BOOL)canBack;
  37. // 撤销
  38. - (void)goBack;
  39. /// 清空画板 不可恢复
  40. - (void)clear;
  41. @end
  42. NS_ASSUME_NONNULL_END