Створюйте PDF-файли з тегами в C# .NET

Файл PDF із тегами – це тип PDF, у якому використовуються теги для визначення логічної структури вмісту документа. Він використовується для покращення досвіду читання для тих, хто використовує допоміжні технології та програми зчитування з екрана. У попередній публікації ми розповідали про створення PDF-файлів у програмі .NET. У цій статті ми продемонструємо, як програмно створювати PDF-файли з тегами в C# .NET.

Бібліотека C# для створення PDF-файлів із тегами – безкоштовне завантаження

Для створення PDF-файлів із тегами ми будемо використовувати Aspose.PDF for .NET. Це надійна бібліотека для створення PDF-файлів і роботи з ними в програмах .NET. Використовуючи бібліотеку, ви можете легко створювати, обробляти та конвертувати PDF-файли простого та складного макетів. Ви можете завантажити двійкові файли бібліотеки або встановити її за допомогою NuGet.

PM> Install-Package Aspose.PDF

Створення PDF-файлу з тегами на C#

Для створення структурних елементів у PDF-файлі з тегами Aspose.PDF for .NET надає інтерфейс ITaggedContent. Отже, давайте подивимося, як використовувати цей інтерфейс для створення PDF-файлу з тегами на C#.

  • Створіть новий PDF-файл або завантажте наявний за допомогою класу Document.
  • Отримати посилання на TaggedContent документа в об’єкт ITaggedContent.
  • Установіть заголовок, заголовок і мову та додайте елементи до PDF за допомогою об’єкта ITaggedContent.
  • Створіть новий ParagraphElement за допомогою методу ITaggedContent.CreateParagraphElement() і встановіть його текст.
  • Додайте абзац до документа за допомогою методу ITaggedContent.RootElement.AppendChild().
  • Нарешті збережіть файл PDF за допомогою методу Document.Save(String).

У наведеному нижче прикладі коду показано, як створити PDF-файл із тегами на C#.

// Створити документ PDF
Document document = new Document();

// Отримайте вміст для роботи з PDF-файлами з тегами
ITaggedContent taggedContent = document.TaggedContent;
var rootElement = taggedContent.RootElement;
            
// Установіть назву та мову для документа
taggedContent.SetTitle("Tagged Pdf Document");
taggedContent.SetLanguage("en-US");

// Додайте заголовок
HeaderElement mainHeader = taggedContent.CreateHeaderElement();
mainHeader.SetText("Main Header");

// Додайте абзац
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);

// Зберегти тегований PDF
document.Save("tagged-pdf.pdf");

Нижче наведено результат наведеного вище прикладу коду.

Створення PDF-файлу з тегами на C#

C# Створення PDF-файлу з тегами з вкладеними елементами

У попередньому прикладі ми створили простий PDF-файл із тегами, який містить абзац. Давайте тепер розглянемо, як додати вкладені елементи в тегований PDF-файл. Нижче наведено кроки для виконання цієї операції.

  • Створіть новий PDF-файл або завантажте наявний за допомогою класу Document.
  • Отримати посилання на TaggedContent документа в об’єкт ITaggedContent.
  • Установіть заголовок, заголовок і мову та додайте елементи до PDF за допомогою об’єкта ITaggedContent.
  • Створіть новий ParagraphElement за допомогою методу ITaggedContent.CreateParagraphElement() і встановіть його текст.
  • Використовуйте клас SpanElement, щоб додати вкладені елементи.
  • Додайте вкладений елемент до абзацу за допомогою методу ParagraphElement.AppendChild().
  • Додайте абзац до документа за допомогою методу ITaggedContent.RootElement.AppendChild().
  • Нарешті збережіть файл PDF за допомогою методу Document.Save(String).

У наведеному нижче прикладі коду показано, як додати вкладені елементи в тегований PDF-файл на C#.

// Створити документ PDF
Document document = new Document();

// Отримайте вміст для роботи з тегами PDF
ITaggedContent taggedContent = document.TaggedContent;
var rootElement = taggedContent.RootElement;

// Установіть назву та мову для документа
taggedContent.SetTitle("Tagged Pdf Document");
taggedContent.SetLanguage("en-US");

// Додайте заголовок
HeaderElement mainHeader = taggedContent.CreateHeaderElement();
mainHeader.SetText("Main Header");

// Створити абзац
ParagraphElement paragraphWithQuotes = taggedContent.CreateParagraphElement();
paragraphWithQuotes.StructureTextState.Font = FontRepository.FindFont("Calibri");
paragraphWithQuotes.StructureTextState.MarginInfo = new MarginInfo(10, 5, 10, 5);

// Додати елемент 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.");

// Дописати до абзацу
paragraphWithQuotes.AppendChild(spanElement1);
paragraphWithQuotes.AppendChild(quoteElement);
paragraphWithQuotes.AppendChild(spanElement2);

// Додати до кореневого елемента
rootElement.AppendChild(mainHeader);
rootElement.AppendChild(paragraphWithQuotes);

// Зберегти тегований PDF
document.Save("tagged-pdf-nested-elements.pdf");

На наступному знімку екрана показано тегований PDF із вкладеними елементами.

Створення PDF-файлу з тегами з вкладеними елементами в C#

Стилізація структури тексту в PDF-файлі з тегами на C#

Ви також можете застосувати стиль до тексту в PDF-файлі з тегами, установивши стиль шрифту, сімейство, розмір тощо. Для цього Aspose.PDF for .NET надає Font, FontSize, [FontStyle] Властивості 25 і ForegroundColor класу StructureTextState. У наведеному нижче прикладі коду показано, як застосувати стиль тексту до PDF-файлу з тегами на C#.

// Створити документ PDF
Document document = new Document();

// Отримайте вміст для роботи з тегами PDF
ITaggedContent taggedContent = document.TaggedContent;
var rootElement = taggedContent.RootElement;

// Установіть назву та мову для документа
taggedContent.SetTitle("Tagged Pdf Document");
taggedContent.SetLanguage("en-US");

// Додайте заголовок
HeaderElement mainHeader = taggedContent.CreateHeaderElement();
mainHeader.SetText("Main Header");

// Створити абзац
ParagraphElement paragraphWithQuotes = taggedContent.CreateParagraphElement();
taggedContent.RootElement.AppendChild(paragraphWithQuotes);

// Встановити стиль
paragraphWithQuotes.StructureTextState.FontSize = 18F;
paragraphWithQuotes.StructureTextState.ForegroundColor = Color.Red;
paragraphWithQuotes.StructureTextState.FontStyle = FontStyles.Italic;
            
// Додайте текст
paragraphWithQuotes.SetText("Red italic text.");

// Зберегти тегований PDF
document.Save("tagged-pdf-text-styling.pdf");

Ілюстрація елементів структури C# у PDF-файлі з тегами

Щоб проілюструвати елементи структури, Aspose.PDF for .NET надає клас IllustrationElement. У наведеному нижче прикладі коду показано, як використовувати цей клас для ілюстрації структурних елементів у PDF-файлі з тегами.

// Створити документ PDF
Document document = new Document();

// Отримайте вміст для роботи з тегами PDF
ITaggedContent taggedContent = document.TaggedContent;
var rootElement = taggedContent.RootElement;

// Установіть назву та мову для документа
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");

// Зберегти тегований PDF
document.Save("tagged-pdf-illustrating-structure.pdf");

Безкоштовна бібліотека PDF для створення тегованих PDF

Ви можете отримати безкоштовну тимчасову ліцензію і створювати PDF-файли з тегами без обмежень оцінки.

Ознайомтеся з бібліотекою C# PDF

Крім того, ви можете дізнатися більше про бібліотеку C# PDF за допомогою документації. Якщо у вас виникнуть запитання чи запити, ви можете зв’язатися з нами через наш форум.

Висновок

У цій статті ви дізналися, як створювати PDF-файли з тегами на C#. Крім того, ви бачили, як програмно створювати вкладені елементи, застосовувати стилі до тексту та проілюструвати структурні елементи в PDF-файлі з тегами.

Дивись також