Добавьте HTML с помощью DOM и перезаписи PDF

Это руководство проведет вас через процесс добавления содержимого HTML с использованием DOM (объектная модель документа) в Aspose.PDF для .NET. Кроме того, вы узнаете, как перезаписывать стили HTML-контента. Приведенный исходный код C# демонстрирует необходимые шаги.

Требования

Прежде чем начать, убедитесь, что у вас есть следующее:

  • Visual Studio или любой другой компилятор C#, установленный на вашем компьютере.
  • Aspose.PDF для библиотеки .NET. Вы можете скачать его с официального сайта Aspose или использовать для установки менеджер пакетов, например NuGet.

Шаг 1. Настройте проект

  1. Создайте новый проект C# в предпочитаемой вами среде разработки.
  2. Добавьте ссылку на библиотеку Aspose.PDF для .NET.

Шаг 2. Импортируйте необходимые пространства имен.

В файл кода, куда вы хотите добавить HTML-содержимое, добавьте следующие директивы в верхней части файла:

using Aspose.Pdf;
using Aspose.Pdf.Text;

Шаг 3. Установите каталог документа и путь к выходному файлу.

В коде найдите строку с надписьюstring dataDir = "YOUR DOCUMENT DIRECTORY"; и заменить"YOUR DOCUMENT DIRECTORY" с путем к каталогу, в котором хранятся ваши документы.

string dataDir = "YOUR DOCUMENT DIRECTORY";

Шаг 4. Создайте новый объект документа.

Создать экземпляр новогоDocument объект, добавив следующую строку кода:

Document doc = new Document();

Шаг 5. Добавьте страницу в документ

Добавьте новую страницу в документ с помощьюAdd методPagesколлекция. В предоставленном коде новая страница присваивается переменнойpage.

Page page = doc.Pages.Add();

Шаг 6. Создайте HtmlFragment с содержимым HTML.

Создать экземплярHtmlFragment объект и предоставить желаемое HTML-содержимое. В предоставленном коде содержимое HTML присваивается переменнойtitle. При необходимости вы можете изменить содержимое HTML.

HtmlFragment title = new HtmlFragment("<p style='font-family: Verdana'><b><i>Table contains text</i></b></p>");

Шаг 7. Перезапишите стили HTML-контента.

Чтобы перезаписать стили содержимого HTML, вы можете изменитьTextState свойстваHtmlFragment объект. В предоставленном коде семейство шрифтов изменено на «Arial», а размер шрифта установлен на 20.

title. TextState = new TextState("Arial");
title.TextState.FontSize = 20;

Шаг 8. Установите информацию о марже

При необходимости отрегулируйте нижнее и верхнее поля фрагмента HTML. В предоставленном коде нижнее поле установлено на 10, а верхнее поле — на 400.

title. Margin. Bottom = 10;
title. Margin. Top = 400;

Шаг 9. Добавьте HtmlFragment на страницу.

ДобавитьHtmlFragment объект коллекции абзацев страницы.

page.Paragraphs.Add(title);

Шаг 10. Сохраните PDF-документ.

Сохраните PDF-документ, используяSave методDocument объект. Укажите путь к выходному файлу, который вы установили на шаге 3.

dataDir = dataDir + "AddHTMLUsingDOMAndOverwrite_out.pdf";
doc.Save(dataDir);

Пример исходного кода для добавления HTML с использованием DOM и перезаписи с использованием Aspose.PDF для .NET

// Путь к каталогу документов.
string dataDir = "YOUR DOCUMENT DIRECTORY";
// Создать экземпляр объекта документа
Document doc = new Document();
// Добавить страницу в коллекцию страниц PDF-файла
Page page = doc.Pages.Add();
// Создание экземпляра HtmlFragment с HTML-контентом
HtmlFragment title = new HtmlFragment("<p style='font-family: Verdana'><b><i>Table contains text</i></b></p>");
//Семейство шрифтов Verdana будет изменено на Arial.
title.TextState = new TextState("Arial");
title.TextState.FontSize = 20;
// Установить информацию о нижнем поле
title.Margin.Bottom = 10;
// Установить информацию о верхнем поле
title.Margin.Top = 400;
// Добавить фрагмент HTML в коллекцию абзацев страницы
page.Paragraphs.Add(title);
// Сохранить PDF-файл
dataDir = dataDir + "AddHTMLUsingDOMAndOverwrite_out.pdf";
// Сохранить PDF-файл
doc.Save(dataDir);

Заключение

Вы успешно добавили HTML-содержимое с помощью DOM в Aspose.PDF для .NET и перезаписали стили HTML-содержимого. Полученный PDF-файл теперь можно найти по указанному пути к выходному файлу.

Часто задаваемые вопросы

Вопрос: Чему посвящено это руководство?

О: Это руководство предназначено для того, чтобы показать вам процесс добавления содержимого HTML в документ PDF с использованием объектной модели документа (DOM) в Aspose.PDF для .NET. Кроме того, вы узнаете, как перезаписывать стили HTML-содержимого, что позволяет настраивать его внешний вид. В этом руководстве представлены фрагменты исходного кода C# для демонстрации необходимых шагов.

Вопрос: Какие пространства имен мне нужно импортировать для работы с этим руководством?

О: В файле кода, в который вы собираетесь добавить HTML-контент, импортируйте следующие пространства имен в начале файла:

using Aspose.Pdf;
using Aspose.Pdf.Text;

Вопрос: Как указать каталог документа и путь к выходному файлу?

О: В коде найдите строкуstring dataDir = "YOUR DOCUMENT DIRECTORY"; и заменить"YOUR DOCUMENT DIRECTORY" с фактическим путем к каталогу вашего документа.

Вопрос: Как создать объект «Документ»?

О: На шаге 4 вы создадите новый экземплярDocument объект, используя следующую строку кода:

Document doc = new Document();

Вопрос: Как добавить страницу в документ?

О: На шаге 5 вы добавите в документ новую страницу, используяAdd методPages коллекция:

Page page = doc.Pages.Add();

Вопрос: Как настроить HTML-контент с помощью DOM?

О: На шаге 6 вы создадитеHtmlFragment объект и назначьте ему желаемое HTML-содержимое. Содержимое HTML присваивается переменнойtitle:

HtmlFragment title = new HtmlFragment("<p style='font-family: Verdana'><b><i>Table contains text</i></b></p>");

Вопрос: Как я могу перезаписать стили HTML-контента?

О: На шаге 7 вы перезапишете стили содержимого HTML, изменивTextState свойстваHtmlFragment объект. Например, вы можете изменить семейство шрифтов на «Arial» и установить размер шрифта 20:

title.TextState = new TextState("Arial");
title.TextState.FontSize = 20;

Вопрос: Могу ли я настроить поля HTML-контента?

О: Да, на шаге 8 вы можете настроить нижнее и верхнее поля фрагмента HTML по мере необходимости:

title.Margin.Bottom = 10;
title.Margin.Top = 400;

Вопрос: Как добавить HtmlFragment в документ PDF?

О: На шаге 9 вы добавитеHtmlFragment объект (title) в коллекцию абзацев страницы:

page.Paragraphs.Add(title);

Вопрос: Как сохранить полученный PDF-документ?

О: После добавления содержимого HTML и настройки его стилей используйте командуSave методDocument объект для сохранения PDF-документа:

dataDir = dataDir + "AddHTMLUsingDOMAndOverwrite_out.pdf";
doc.Save(dataDir);

Вопрос: Каков основной вывод из этого урока?

О: Следуя этому руководству, вы успешно научились включать HTML-контент с помощью объектной модели документа (DOM) в Aspose.PDF для .NET. Кроме того, у вас появилась возможность перезаписывать стили, чтобы настроить внешний вид HTML-содержимого результирующего PDF-документа.