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

另请参阅

ApplyWatermark