Vytvářejte tagované soubory PDF v C# .NET

Tagovaný soubor PDF je typ PDF, který používá tagy k definování logické struktury obsahu v dokumentu. Používá se ke zlepšení zážitku ze čtení pro ty, kteří používají asistenční technologie a čtečky obrazovky. V předchozím příspěvku jsme se zabývali vytvářením souborů PDF v aplikaci .NET. V tomto článku si ukážeme, jak vytvářet tagované soubory PDF programově v C# .NET.

Knihovna C# k vytvoření tagovaného PDF – ke stažení zdarma

K vytvoření tagovaných souborů PDF použijeme Aspose.PDF for .NET. Je to robustní knihovna pro generování PDF a manipulaci v aplikacích .NET. Pomocí knihovny můžete bez problémů vytvářet, zpracovávat a převádět soubory PDF jednoduchých i složitých rozvržení. Můžete si stáhnout binárky knihovny nebo je nainstalovat pomocí NuGet.

PM> Install-Package Aspose.PDF

Vytvoření tagovaného PDF v C#

Chcete-li vytvořit prvky struktury v tagovaném PDF, Aspose.PDF pro .NET poskytuje rozhraní ITaggedContent. Pojďme se tedy podívat, jak toto rozhraní použít k vytvoření tagovaného souboru PDF v C#.

Následující ukázka kódu ukazuje, jak vytvořit tagovaný PDF v C#.

// Vytvořte dokument PDF
Document document = new Document();

// Získejte obsah pro práci s tagovaným PDF
ITaggedContent taggedContent = document.TaggedContent;
var rootElement = taggedContent.RootElement;
            
// Nastavte název a jazyk dokumentu
taggedContent.SetTitle("Tagged Pdf Document");
taggedContent.SetLanguage("en-US");

// Přidat záhlaví
HeaderElement mainHeader = taggedContent.CreateHeaderElement();
mainHeader.SetText("Main Header");

// Přidat odstavec
ParagraphElement paragraphElement = taggedContent.CreateParagraphElement();
paragraphElement.SetText("Lorem ipsum dolor sit amet, consectetur adipiscing elit. " +
"Aenean nec lectus ac sem faucibus imperdiet. Sed ut erat ac magna ullamcorper hendrerit. " +
"Cras pellentesque libero semper, gravida magna sed, luctus leo. Fusce lectus odio, laoreet" +
"nec ullamcorper ut, molestie eu elit. Interdum et malesuada fames ac ante ipsum primis in faucibus." +
"Aliquam lacinia sit amet elit ac consectetur. Donec cursus condimentum ligula, vitae volutpat" +
"sem tristique eget. Nulla in consectetur massa. Vestibulum vitae lobortis ante. Nulla ullamcorper" +
"pellentesque justo rhoncus accumsan. Mauris ornare eu odio non lacinia. Aliquam massa leo, rhoncus" +
"ac iaculis eget, tempus et magna. Sed non consectetur elit. Sed vulputate, quam sed lacinia luctus," +
"ipsum nibh fringilla purus, vitae posuere risus odio id massa. Cras sed venenatis lacus.");

rootElement.AppendChild(mainHeader);
rootElement.AppendChild(paragraphElement);

// Uložit označené PDF
document.Save("tagged-pdf.pdf");

Následuje výstup výše uvedené ukázky kódu.

Vytvořte tagovaný soubor PDF v C#

C# Vytvořte tagovaný PDF s vnořenými prvky

V předchozím příkladu jsme vytvořili jednoduchý tagovaný PDF, který obsahuje odstavec. Pojďme se nyní podívat na to, jak přidat vnořené prvky do tagovaného PDF. Následují kroky k provedení této operace.

Následující ukázka kódu ukazuje, jak přidat vnořené prvky do tagovaného PDF v C#.

// Vytvořte dokument PDF
Document document = new Document();

// Získejte obsah pro práci s tagovaným PDF
ITaggedContent taggedContent = document.TaggedContent;
var rootElement = taggedContent.RootElement;

// Nastavte název a jazyk dokumentu
taggedContent.SetTitle("Tagged Pdf Document");
taggedContent.SetLanguage("en-US");

// Přidat záhlaví
HeaderElement mainHeader = taggedContent.CreateHeaderElement();
mainHeader.SetText("Main Header");

// Vytvořit odstavec
ParagraphElement paragraphWithQuotes = taggedContent.CreateParagraphElement();
paragraphWithQuotes.StructureTextState.Font = FontRepository.FindFont("Calibri");
paragraphWithQuotes.StructureTextState.MarginInfo = new MarginInfo(10, 5, 10, 5);

// Přidat prvek span
SpanElement spanElement1 = taggedContent.CreateSpanElement();
spanElement1.SetText("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean nec lectus ac sem faucibus imperdiet. Sed ut erat ac magna ullamcorper hendrerit. Cras pellentesque libero semper, gravida magna sed, luctus leo. Fusce lectus odio, laoreet nec ullamcorper ut, molestie eu elit. Interdum et malesuada fames ac ante ipsum primis in faucibus. Aliquam lacinia sit amet elit ac consectetur. Donec cursus condimentum ligula, vitae volutpat sem tristique eget. Nulla in consectetur massa. Vestibulum vitae lobortis ante. Nulla ullamcorper pellentesque justo rhoncus accumsan. Mauris ornare eu odio non lacinia. Aliquam massa leo, rhoncus ac iaculis eget, tempus et magna. Sed non consectetur elit. ");
QuoteElement quoteElement = taggedContent.CreateQuoteElement();
quoteElement.SetText("Sed vulputate, quam sed lacinia luctus, ipsum nibh fringilla purus, vitae posuere risus odio id massa.");
quoteElement.StructureTextState.FontStyle = FontStyles.Bold | FontStyles.Italic;
SpanElement spanElement2 = taggedContent.CreateSpanElement();
spanElement2.SetText(" Sed non consectetur elit.");

// Připojit k odstavci
paragraphWithQuotes.AppendChild(spanElement1);
paragraphWithQuotes.AppendChild(quoteElement);
paragraphWithQuotes.AppendChild(spanElement2);

// Přidat do kořenového prvku
rootElement.AppendChild(mainHeader);
rootElement.AppendChild(paragraphWithQuotes);

// Uložit označené PDF
document.Save("tagged-pdf-nested-elements.pdf");

Následující snímek obrazovky ukazuje tagovaný PDF s vnořenými prvky.

Vytvoření tagovaného PDF s vnořenými prvky v C#

Stylování struktury textu v tagovaném PDF v C#

Můžete také použít styl na text v tagovaném PDF nastavením stylu písma, rodiny, velikosti atd. K tomu poskytuje Aspose.PDF pro .NET Font, FontSize, FontStyle a ForegroundColor vlastnosti třídy StructureTextState. Následující ukázka kódu ukazuje, jak použít styl textu v tagovaném PDF v C#.

// Vytvořte dokument PDF
Document document = new Document();

// Získejte obsah pro práci s tagovaným PDF
ITaggedContent taggedContent = document.TaggedContent;
var rootElement = taggedContent.RootElement;

// Nastavte název a jazyk dokumentu
taggedContent.SetTitle("Tagged Pdf Document");
taggedContent.SetLanguage("en-US");

// Přidat záhlaví
HeaderElement mainHeader = taggedContent.CreateHeaderElement();
mainHeader.SetText("Main Header");

// Vytvořit odstavec
ParagraphElement paragraphWithQuotes = taggedContent.CreateParagraphElement();
taggedContent.RootElement.AppendChild(paragraphWithQuotes);

// Nastavte styling
paragraphWithQuotes.StructureTextState.FontSize = 18F;
paragraphWithQuotes.StructureTextState.ForegroundColor = Color.Red;
paragraphWithQuotes.StructureTextState.FontStyle = FontStyles.Italic;
            
// Přidej text
paragraphWithQuotes.SetText("Red italic text.");

// Uložit označené PDF
document.Save("tagged-pdf-text-styling.pdf");

C# Ilustrace prvků struktury v tagovaném PDF

Pro ilustraci prvků struktury poskytuje Aspose.PDF pro .NET třídu IllustrationElement. Následující ukázka kódu ukazuje, jak použít tuto třídu k ilustraci strukturálních prvků v tagovaném PDF.

// Vytvořte dokument PDF
Document document = new Document();

// Získejte obsah pro práci s tagovaným PDF
ITaggedContent taggedContent = document.TaggedContent;
var rootElement = taggedContent.RootElement;

// Nastavte název a jazyk dokumentu
taggedContent.SetTitle("Tagged Pdf Document");
taggedContent.SetLanguage("en-US");

IllustrationElement figure1 = taggedContent.CreateFigureElement();
taggedContent.RootElement.AppendChild(figure1);
figure1.AlternativeText = "Figure One";
figure1.Title = "Image 1";
figure1.SetTag("Fig1");
figure1.SetImage("aspose_pdf.png");

// Uložit označené PDF
document.Save("tagged-pdf-illustrating-structure.pdf");

Bezplatná knihovna PDF pro vytváření tagovaných PDF

Můžete získat bezplatnou dočasnou licenci a vytvářet tagované soubory PDF bez omezení hodnocení.

Prozkoumejte knihovnu C# PDF

Kromě toho můžete prozkoumat více o knihovně C# PDF pomocí dokumentace. V případě jakýchkoli dotazů nebo dotazů nás můžete kontaktovat prostřednictvím našeho fóra.

Závěr

V tomto článku jste se naučili, jak vytvářet tagované soubory PDF v C#. Dále jste viděli, jak vytvářet vnořené prvky, aplikovat styly na text a ilustrovat prvky struktury v tagovaném PDF programově.

Viz také