Loģiskā struktūra
Loģiskā struktūra
Tagoti PDF ietver loģiskās struktūras koku, kas definē dokumenta semantisko hierarhiju — rindkopas, virsrakstus, tabulas, attēlus un sarakstus. Aspose.PDF FOSS for .NET nodrošina TaggedContent API struktūras izveidei un pārbaudei, kas ir būtiska PDF/UA pieejamības atbilstībai.
Piekļūšana marķētam saturam
using var doc = new Document();
var tagged = doc.TaggedContent;
tagged.SetTitle("Accessible Document");
tagged.SetLanguage("en-US");Izveido struktūras elementus
ITaggedContent nodrošina ražotāja metodes katram standarta struktūras elementa tipam. Elementi tiek sastādīti koks, izsaucot AppendChild.
var root = tagged.RootElement;
var heading = tagged.CreateHeaderElement(1);
heading.SetText("Chapter 1");
root.AppendChild(heading);
var paragraph = tagged.CreateParagraphElement();
paragraph.SetText("This is the first paragraph.");
root.AppendChild(paragraph);Strukturētas tabulas
TableElement izveido pieejamas tabulas ar galveni, ķermeni un kājenes sadaļām.
var table = tagged.CreateTableElement();
root.AppendChild(table);
var thead = table.CreateTHead();
var headerRow = thead.CreateTR();
headerRow.CreateTH().SetText("Name");
headerRow.CreateTH().SetText("Value");
var tbody = table.CreateTBody();
var dataRow = tbody.CreateTR();
dataRow.CreateTD().SetText("Width");
dataRow.CreateTD().SetText("612");Ilustrācijas un figūras
IllustrationElement aptver attēlus struktūras kokā.
var figure = tagged.CreateFigureElement();
figure.SetImage("chart.png");
figure.SetAlternativeText("Sales chart for Q4");
root.AppendChild(figure);Struktūras elementu veidi
API atbalsta pilnu PDF struktūras elementu tipu kopumu:
- Block-level: Paragrāfs, Virsraksts (H1-H6), Saraksts, Saraksta vienība, Tabula, Bloka citāts, Kods
- Inline: Span, Saite, Anotācija, Attēls, Formulas
- Grouping: Sadalījums, Raksts, Sadaļa, Daļa
Padomi un labākās prakses
- Vienmēr iestatiet
TitleunLanguageuzTaggedContent, lai nodrošinātu PDF/UA atbilstību. - Izveidojiet struktūras koku no augšas uz leju: izveidojiet elementus, pēc tam pievienojiet bērnus.
- Izmantojiet
SetAlternativeTextuz figūras elementiem, lai nodrošinātu piekļuvi ekrāna lasītājiem. - Marķējiet tabulas ar
THead,TBody,TFoot, lai nodrošinātu pareizu tabulu semantiku. - Pārbaudiet PDF/UA atbilstību, izmantojot
PdfFormatConversionOptions(skatiet Pārveides rokasgrāmatu).
Bieži sastopamās problēmas
| Issue | Cause | Fix |
|---|---|---|
| PDF/UA validācija neizdodas | Struktūras koks trūkst nepieciešamajiem elementiem | Nodrošiniet, lai viss saturs būtu ar atbilstošiem struktūras elementiem |
| Virsrakstu secība ir nepareiza | H2 parādās pirms H1 | Ievērojiet secīgu virsrakstu hierarhiju |
| Attēlam nav alternatīvā teksta | SetAlternativeText nav izsaukts | Vienmēr norādiet alternatīvo tekstu ilustrācijām |
| Tabula nav atpazīta ekrāna lasītāja | Trūkst THead/TBody struktūras | Izmantojiet pilnas tabulas struktūras API |
Biežāk uzdotie jautājumi
Kas ir tagots PDF?
Taggots PDF ietver loģisko struktūras koku, kas kartē vizuālo saturu uz semantiskajiem elementiem (virsraksti, rindkopas, tabulas), nodrošinot piekļuves rīkus un satura pārpludināšanu.
Vai marķētais PDF ir tas pats kā PDF/UA?
PDF/UA ir standarts, kas pieprasa marķēšanu plus papildu pieejamības noteikumus.
Marķēti PDF ir priekšnosacījums PDF/UA atbilstībai.
Vai es varu iezīmēt esošu PDF?
TaggedContent API vislabāk darbojas ar dokumentiem, kas izveidoti no jauna. Esošiem PDF, pārbaudiet struktūras koku caur Document.TaggedContent.
API atsauču kopsavilkums
| Klase / Metode | Apraksts |
|---|---|
TaggedContent | Ievades punkts loģiskās struktūras operācijām |
TaggedContent.SetTitle | Iestatīt dokumenta nosaukumu pieejamības nolūkā |
TaggedContent.SetLanguage | Iestatīt dokumenta valodu |
ITaggedContent | Saskarne ar ražotāja metodēm visiem elementu tipiem |
StructureElement | Bāzes klase visiem struktūras elementiem |
StructureElement.AppendChild | Pievienot bērna elementu koka struktūrai |
StructureElement.SetText | Iestatīt elementa teksta saturu |
TableElement | Pieejams tabulas struktūras elements |
TableElement.CreateTHead | Izveidot tabulas galvenes sadaļu |
TableElement.CreateTBody | Izveidot tabulas ķermeņa sadaļu |
TableTRElement | Tabulas rindas elements |
TableTRElement.CreateTD | Pievienot datu šūnu |
TableTRElement.CreateTH | Pievienot galvenes šūnu |
IllustrationElement | Attēla/ilustrācijas struktūras elements |
IllustrationElement.SetImage | Pievienot attēlu ilustrācijai |