AddTagAttribute
PDF có gắn thẻ, Khả năng tiếp cận
Mô tả
Thêm một attribute có tên vào structure element đang được dựng trên tag stack. Attribute được ghi thành dictionary /A của PDF (hoặc mảng dictionary) khi tài liệu được lưu. Gọi sau BeginTag hoặc BeginTagEx và trước EndTag
Cú pháp
Delphi
Function TPDFlib.AddTagAttribute(Const Owner, Name, Value: WideString): Integer;
ActiveX
Function PDFlib::AddTagAttribute(Owner As String, Name As String, Value As String) As Long
DLL
int DLAddTagAttribute(int InstanceID, const wchar_t * Owner, const wchar_t * Name, const wchar_t * Value);
Tham số
| Owner | Tên owner attribute theo định nghĩa trong ISO 32000-1 Table 348 (vd., Layout, Table, List, PrintField). Giá trị này trở thành key /O trong attribute dictionary |
|---|---|
| Name | Tên attribute cho owner cho trước (vd., BBox cho Layout, Scope cho Table). Không được rỗng |
| Value | Giá trị attribute dạng chuỗi. Giá trị chỉ gồm các số phân tách bằng khoảng trắng (vd., "0 0 200 100") được ghi thành mảng số thực của PDF. Giá trị khác được ghi thành PDF name object (không có / đứng đầu). Không được rỗng |
Giá trị trả về
Returns 1 on success. Returns 0 if no document is open, no tag is currently open, or Owner or Name is empty.
Ghi chú
Nhiều lần gọi AddTagAttribute cho cùng một tag đang mở được tích lũy lại. Khi các attribute thuộc về một owner duy nhất, thư viện ghi một dictionary /A duy nhất. Khi dùng nhiều owner, các attribute được nhóm theo owner và ghi thành một mảng các attribute dictionary
Với các attribute thông dụng, có thể dùng các wrapper tiện lợi SetStructElemScope và SetStructElemBBox thay vì gọi AddTagAttribute trực tiếp
Các attribute bị reset khi một tag mới được mở; chúng không được kế thừa bởi phần tử con
Ví dụ
// Mark a table header cell with column scope
PDFlib.BeginTag('TH', '', '', '');
PDFlib.AddTagAttribute('Table', 'Scope', 'Column');
// ... draw cell content
PDFlib.EndTag;
// Mark a figure with a bounding box
PDFlib.BeginTag('Figure', 'Company logo', '', '');
PDFlib.AddTagAttribute('Layout', 'BBox', '72 600 200 700');
PDFlib.EndTag;Xem thêm
BeginTag, BeginTagEx, EndTag, SetStructElemScope, SetStructElemBBox