๐ Accessible Tables
Full table structure with THead/TBody, header scope, ID/Headers associations, and captions.
C# โ Accessible Table
var table = root.AddChild(StructureType.Table);
// Caption linked to the table
var caption = table.AddCaption();
page.AddTaggedText(caption,
"Table 1: Employees", 72, 710);
// Header row group
var thead = table.AddTableHead();
var hrow = thead.AddTableRow();
// Header cells with scope and ID
var thName = hrow.AddHeaderCell(
PdfTableScope.Column, id: "name",
shortText: "Name");
var thDept = hrow.AddHeaderCell(
PdfTableScope.Column, id: "dept",
shortText: "Dept");
var thEmail = hrow.AddHeaderCell(
PdfTableScope.Column, id: "email",
shortText: "Email");
// Body row group
var tbody = table.AddTableBody();
var row1 = tbody.AddTableRow();
// Data cells reference header IDs
var td1Name = row1.AddDataCell("name");
var td1Dept = row1.AddDataCell("dept");
var td1Email = row1.AddDataCell("email");
// Render header cells
page.AddTaggedText(thName, "Name", 72, 680);
page.AddTaggedText(thDept, "Dept", 220, 680);
page.AddTaggedText(thEmail, "Email", 360, 680);
// Render data cells
page.AddTaggedText(td1Name, "Alice", 72, 655);
page.AddTaggedText(td1Dept, "Eng", 220, 655);
page.AddTaggedText(td1Email,
"alice@example.com", 360, 655);
You should see a bold "Accessible Table" heading, a "Table 1: Employees" caption, a header row with columns Name / Dept / Email, and one data row containing Alice / Eng / alice@example.com. In a PDF viewer's Tags panel the structure should show Table โบ Caption, THead โบ TR โบ TH (ร3), TBody โบ TR โบ TD (ร3).
File: 06_accessible_table.pdf
Table Structure Elements
| Method | Creates | Purpose |
|---|---|---|
AddTableHead() | THead | Header row group |
AddTableBody() | TBody | Body row group |
AddTableFoot() | TFoot | Footer row group |
AddTableRow() | TR | Table row |
AddHeaderCell(scope, id) | TH | Header cell with scope |
AddDataCell(headerIds) | TD | Data cell linked to headers |
AddCaption() | Caption | Table caption/title |