CNLiveWatermark.h
2.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
//
// CNLiveWatermark.h
// CNLivePlayer_Example
//
// Created by CNLive-zxw on 2019/8/21.
// Copyright © 2019 153993236@qq.com. All rights reserved.
//
/**
* 水印
*/
#import <Foundation/Foundation.h>
#import <GPUImage/GPUImage.h>
NS_ASSUME_NONNULL_BEGIN
@interface CNLiveWatermark : NSObject
/**
@abstract 水印logo的图片
@discussion 设置为nil为清除水印图片
@discussion 请注意背景图片的尺寸, 太大的图片会导致内存占用过高
*/
@property (nonatomic, readwrite) GPUImagePicture *logoPic;
/**
设置水印图片的朝向
@param orien 图片的朝向
*/
- (void)setLogoOrientaion:(UIImageOrientation) orien;
/**
@abstract 文字内容的图片
@discussion 设置为nil为清除内容图片
*/
@property (nonatomic, readwrite) GPUImagePicture *textPic;
/**
@abstract 贴纸的图片
@discussion 设置为nil为清除贴纸图片
*/
@property (nonatomic, readwrite) GPUImageUIElement *aePic;
/**
@abstract 水印logo的图片的位置和大小
@discussion 位置和大小的单位为预览视图的百分比, 左上角为(0,0), 右下角为(1.0, 1.0)
@discussion 如果宽为0, 则根据图像的宽高比, 和设置的高度比例, 计算得到宽度的比例
@discussion 如果高为0, 方法同上
*/
@property (nonatomic, readwrite) CGRect logoRect;
/**
@abstract 水印logo的图片的透明度
@discussion alpha为透明度(0-1),0完全透明,1完全不透明
*/
@property (nonatomic, readwrite) CGFloat logoAlpha;
/**
@abstract 水印文字的label
@discussion 借用UILabel来指定文字的颜色,字体, 透明度, 对齐方式等属性
@discussion 请注意保证背景图片的尺寸, 太大的图片会导致内存占用过高
@warning 如果使用非等宽字体, 可能导致闪烁(默认为Courier)
@warning picMixer和UILabel都有alpha属性, 建议只选用其中一个, 固定另一个为1.0,
为了减少接口, 建议直接使用UILabel的属性,
如果两者同时使用, 最终图层的alpha为两者乘积
*/
@property (nonatomic, readwrite) UILabel *textLabel;
/**
@abstract 水印文字的位置和大小
@discussion 位置和大小的单位为预览视图的百分比, 左上角为(0,0), 右下角为(1.0, 1.0)
@discussion 如果宽为0, 则根据文字图像的宽高比, 和设置的高度比例, 计算得到宽度的比例
@discussion 如果高为0, 方法同上
*/
@property (nonatomic, readwrite) CGRect textRect;
/**
@abstract 刷新水印文字的内容
@discussion 先修改文字的内容或格式,调用该方法后生效
*/
- (void)updateTextLabel;
@end
NS_ASSUME_NONNULL_END