THotPDF.ApplyLoadedRedactions

Applies loaded Redact annotations to every painting category while removing intersecting text bytes

Delphi 语法

function ApplyLoadedRedactions(
  const PageRange: AnsiString= ''): Integer;

说明

该方法收集每个选定页面上 /Subtype /Redact 注释的矩形,规范化其坐标,并对相交的矩形做保守合并

外层页面矩形与合并后的涂黑矩形一起,围绕整个原始页面内容构成一条 even-odd 裁剪路径。因此裁剪会在矩形边界处精确作用于文本、描边与填充路径、图像、Pattern 绘制、内联图像以及 Form XObject,而不是把整个绘制操作符丢弃

裁剪图形状态在第一个页面内容流之前开始,在最后一个内容流之后恢复,从而在 /Contents 数组的各个流之间保持正常的状态连续性。不透明的黑色覆盖层只在该恢复之后才绘制

与矩形相交的直接字符串操作数和单个 TJ 字符串项,会在原始的解码流中被替换为空格。相交判断使用字形四边形;无法取得精确几何时,则保守地退回到文本原点

返回值是被置空的直接字符串操作数与 TJ 项的总数。返回零也可能意味着非文本的页面图形已被成功裁剪

PageRange uses one-based page numbers and ranges. An empty value processes every page

另请参阅 先审阅后编辑的密文检测, RedactLoadedRect,以及 AddRedactAnnotation