TPDFlibWatermarkBase
数据类型、页面布局
描述
TPDFlibWatermarkBase 是传递给 ApplyWatermark 的水印抽象基类,它保存所有水印类型共用的位置、旋转、不透明度和页面范围,并声明每个具体子类都会重写以自行绘制的 Apply 方法
库提供三个具体子类:用于文本的 TPDFlibTextWatermark、用于图像的 TPDFlibImageWatermark 和用于矢量形状的 TPDFlibShapeWatermark
语法
Delphi
TPDFlibWatermarkBase = Class
Public
Position: TPDFlibWatermarkPosition;
X, Y: Double;
Angle: Double;
Opacity: Double;
PageRange: WideString;
Constructor Create; Virtual;
Function Apply(Lib: TObject): Integer; Virtual; Abstract;
End;参数
| Position | 来自 TPDFlibWatermarkPosition 的放置预设;wpCustom 直接使用 X 和 Y |
|---|---|
| X, Y | 当 Position 为 wpCustom 时使用的绝对左上角坐标 |
| Angle | 旋转角度,以度为单位,其中 0 表示水平 |
| Opacity | 范围为 0 至 1 的 Alpha,其中 1 表示完全不透明 |
| PageRange | 要加盖时间戳的页面范围;空字符串表示所有页面 |
返回值
Apply 返回已放置水印的页数
备注
具体子类会添加各自的字段:TPDFlibTextWatermark 添加 Text、FontID、FontSize 以及 R、G、B;TPDFlibImageWatermark 添加 ImageID、Width 和 Height;TPDFlibShapeWatermark 添加形状几何数据
调用方构造子类实例,设置其字段后传递给 ApplyWatermark;外观层会在绘制前针对每个页面尺寸解析 Position