SetStructElemListNumberingA

标记 PDF、可访问性

描述

末尾的 A 表示 ANSI(char)DLL 入口点,ActiveX/COM 接口仅公开 Unicode 形式。其行为与 SetStructElemListNumbering 相同,字符串参数会按照当前的 SetAnsiMode 代码页进行解释

在当前于标签栈中打开的结构元素上设置 /ListNumbering 属性(List 属性所有者),该值声明 L(列表)结构元素中项目使用的标记或编号方案,使辅助技术能正确播报列表类型,等同于调用 AddTagAttribute 并使用 Owner=List、Name=ListNumbering 和方案名称作为值

语法

Delphi

Function DLSetStructElemListNumberingA(InstanceID: Integer; Numbering: PAnsiChar): Integer;

DLL

int DLSetStructElemListNumberingA(int InstanceID, const char * Numbering);

参数

Numbering列表编号方案,必须是以下值之一(区分大小写):

None — 无可见标记(属性缺失时的默认值)
Disc — 实心圆(•)
Circle — 空心圆(○)
Square — 实心方块(■)
Decimal — 1、2、3 …
UpperRoman — I、II、III …
LowerRoman — i、ii、iii …
UpperAlpha — A、B、C …
LowerAlpha — a、b、c …

返回值

成功时返回 1。未打开文档或标签栈中当前没有打开标签时返回 0

备注

在使用类型为 BeginTag 的标记后调用此函数,其类型为 L(列表),并在 EndTag 前调用。/ListNumbering 属性定义于 ISO 32000-1 §14.8.5.3.2(列表属性所有者,表 336)

该属性适用于包含它的 L 元素,而非各个 LI 项,应在打开 L 元素后立即对其设置一次,该属性仅起提示作用:它告知辅助技术这是何种列表,以便无论 PDF 渲染器实际绘制何种视觉标记字形,都能播报“项目符号列表”“编号列表”等

当列表没有显式编号系统时(例如,没有可视项目符号的一系列术语),请使用 None 或完全省略该属性

示例

// An ordered decimal list
PDFlib.BeginTag('L', '', '', '');
PDFlib.SetStructElemListNumbering('Decimal');

  PDFlib.BeginTag('LI', '', '', '');
    PDFlib.BeginTag('Lbl', '', '', '');
    PDFlib.DrawText('1.', 72, 700);
    PDFlib.EndTag;
    PDFlib.BeginTag('LBody', '', '', '');
    PDFlib.DrawText('First item', 90, 700);
    PDFlib.EndTag;
  PDFlib.EndTag;

  PDFlib.BeginTag('LI', '', '', '');
    PDFlib.BeginTag('Lbl', '', '', '');
    PDFlib.DrawText('2.', 72, 680);
    PDFlib.EndTag;
    PDFlib.BeginTag('LBody', '', '', '');
    PDFlib.DrawText('Second item', 90, 680);
    PDFlib.EndTag;
  PDFlib.EndTag;

PDFlib.EndTag; // L

另请参阅

SetStructElemExpansion, AddTagAttribute, BeginTag, EndTag, GetPDFUADiagnostics