PDFium Delphi Component 文件

AnnotationCount 属性

组件: TPdf  ·  单元: PDFium
当前活动页面上附加的注释对象数量

Syntax

property AnnotationCount: Integer; // read only

Description

AnnotationCount 返回当前页面 /Annots 数组的长度(PDF 1.7 规范第 12.5 节)。所有注释子类型都会被计入 — 文本 注释、高亮、下划线、自由文本、墨迹、图章、多边形和折线形状、 链接注释、弹出对话框以及表单控件注释。将每一页的值相加即可获得 整个文档的注释总数

该属性要求 Active 为 True,并从 PageNumber 指示的页面读取。当页面没有注释或 文档未加载时,值为 0。使用 Annotation[Index] 以及从 0 到 AnnotationCount - 1 的索引来检索一个 TPdfAnnotation 记录,其中描述每个条目的子类型、边界矩形、颜色、 标志位掩码和内容文本

遍历注释的复杂度为 O(n),但每次 Annotation[Index] 调用 都会打开一个新的 PDFium 句柄并按需解码 Unicode 内容;如果需要多次使用结果, 请将其缓存。修改页面的注释(插入、 删除)会使索引失效 — 更改后重新开始循环或重新读取 AnnotationCount

Remarks

Example

var I: Integer;
var A: TPdfAnnotation;
for I := 0 to Pdf1.AnnotationCount - 1 do
begin
  A := Pdf1.Annotation[I];
  Memo1.Lines.Add(Format('%d: subtype=%d text=%s',
    [I, Ord(A.Subtype), A.ContentsText]));
end;

See Also

Annotation, LinkAnnotationCount, FormFieldCount, PageNumber