AddTagAttribute

Taggad PDF, tillgänglighet

Beskrivning

Lägger till ett namngivet attribut till det strukturelement som för tillfället byggs på taggstacken. Attributet skrivs som en PDF /A-attributdictionary (eller array av dictionarys) när dokumentet sparas. Anropa detta efter BeginTag eller BeginTagEx och före EndTag

Syntax

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);

Parametrar

OwnerAttributägarnamnet som definierat i ISO 32000-1 tabell 348 (t.ex. Layout, Table, List, PrintField). Detta blir /O-nyckeln i attributdictionaryn
NameAttributnamnet för den givna ägaren (t.ex. BBox för Layout, Scope för Table). Får inte vara tomt
ValueAttributvärdet som en sträng. Ett enskilt tal skrivs som ett PDF-tal, och värden som bara innehåller mellanslagsseparerade tal (t.ex. "0 0 200 100") skrivs som en PDF-array av reella tal. Tal använder punkt som decimaltecken på alla system; ett tal skrivet med systemets eget decimaltecken godtas också. Alla andra värden skrivs som ett PDF-namnobjekt (utan inledande /). Får inte vara tomt

Returvärde

Returnerar 1 vid lyckat anrop. Returnerar 0 om inget dokument är öppet, ingen tagg för tillfället är öppen, eller Owner eller Name är tom

Anmärkningar

Flera anrop av AddTagAttribute för samma öppna tagg ackumuleras. När attribut hör till en enda ägare skriver biblioteket en enda /A-attributdictionary. När flera ägare används grupperas attributen per ägare och skrivs som en array av attributdictionarys

För vanliga attribut kan bekvämlighetswrapperna SetStructElemScope och SetStructElemBBox användas i stället för att anropa AddTagAttribute direkt

Attributen återställs när en ny tagg öppnas; de ärvs inte av underordnade element

Exempel

// 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;

Se även

BeginTag, BeginTagEx, EndTag, SetStructElemScope, SetStructElemBBox