BeginTagEx2

Tagged PDF & Accessibility

Description

開啟一個新的結構元素並將其推送到標記堆疊上,在單次呼叫中設定所有主要元素屬性;BeginTagEx2 是對 BeginTagEx 的便利包裝,後跟 SetStructElemTitleSetStructElemIDSetStructElemExpansion;為 Title, ElemIDExpansion 中的任何一個傳遞空字串將跳過對應的設定方法;其他參數的行為與 BeginTagEx 相同

當您在開啟元素時已知道其所有描述性屬性,請使用 BeginTagEx2,以避免多次連續的 setter 呼叫;如果稍後才決定任何屬性(例如,AltText 非同步到達),請在之後使用 BeginTagBeginTagEx 並呼叫個別的 setter

Syntax

Delphi

Function TPDFlib.BeginTagEx2(Const TagType, AltText, ActualText, Lang, Title, ElemID, Expansion: WideString): Integer;

ActiveX

Function PDFlib::BeginTagEx2(TagType As String, AltText As String, ActualText As String, Lang As String, Title As String, ElemID As String, Expansion As String) As Long

DLL

int DLBeginTagEx2(int InstanceID, const wchar_t * TagType, const wchar_t * AltText, const wchar_t * ActualText, const wchar_t * Lang, const wchar_t * Title, const wchar_t * ElemID, const wchar_t * Expansion);

Parameters

TagType結構元素類型名稱,例如 FigureTableSpanP,與 BeginTag 接受的相同類型
AltText寫入到 /Alt 項目的替代文字 (ISO 32000-1 §14.9.3);傳入空字串可省略
ActualText寫入到 /ActualText 項目的實際文字 (ISO 32000-1 §14.9.4);傳入空字串可省略
Lang寫入到 /Lang 項目的 BCP 47 語言標記 (ISO 32000-1 §14.9.2),例如 en-USfrzh-Hant-TW;傳入空字串可繼承文件語言
Title寫入 /T 條目的易讀標籤(ISO 32000-1 §14.7.2);顯示在 Tags 導覽面板中;傳遞空字串可省略
ElemID寫入 /ID 項目的唯一元素識別碼(ISO 32000-1 §14.7.4);如果設定,在文件內必須是唯一的;傳遞空字串以忽略
Expansion寫入到 /E 項目的縮寫或首字母縮寫之展開值 (ISO 32000-1 §14.9.5);傳入空字串可省略

Return value

成功時傳回 1,未選取文件時傳回 0

Remarks

每次成功呼叫 BeginTagEx2 後,呼叫一次 EndTag,以從標記堆疊中彈出該元素;結構元素可以巢狀化:在另一個元素開啟時呼叫 BeginTagEx2 會建立一個子元素

內部實作完全等同於

BeginTagEx(TagType, AltText, ActualText, Lang);
if Title <> '' then SetStructElemTitle(Title);
if ElemID <> '' then SetStructElemID(ElemID);
if Expansion <> '' then SetStructElemExpansion(Expansion);

對於在元素開啟後確定的屬性,或 BeginTagEx2 未涵蓋的屬性(例如用於表格儲存格屬性的 AddTagAttribute),個別的設定方法仍然可用

Example

// Tag a figure with all descriptive properties in one call
PDFlib.BeginTagEx2(
  'Figure',                              // TagType
  'Bar chart: Q1 120, Q2 145, Q3 98',   // AltText
  '',                                    // ActualText (not needed for images)
  '',                                    // Lang (inherit document language)
  'Figure 3: Quarterly Sales',           // Title
  'fig-quarterly-sales',                 // ElemID
  ''                                     // Expansion (not an abbreviation)
);
PDFlib.SetStructElemBBox(x, y, x + w, y + h);
PDFlib.DrawImage(imgHandle, x, y, w, h);
PDFlib.EndTag;

// Tag an acronym span with its expansion
PDFlib.BeginTagEx2(
  'Span',
  '',                                          // AltText
  '',                                          // ActualText
  '',                                          // Lang
  '',                                          // Title
  '',                                          // ElemID
  'World Wide Web Consortium'                  // Expansion
);
PDFlib.WriteText('W3C');
PDFlib.EndTag;

See also

BeginTag, BeginTagEx, EndTag, SetStructElemTitle, SetStructElemID, SetStructElemExpansion