Тонкая настройка конвертеров в .NET с помощью Aspose.HTML
Введение
Aspose.HTML для .NET — это мощная библиотека, которая позволяет разработчикам манипулировать и конвертировать HTML-документы в различных форматах. Если вам нужно конвертировать HTML в PDF, XPS или изображения или выполнить другие задачи, связанные с HTML, Aspose.HTML предоставляет надежный набор инструментов, которые помогут вам выполнить работу.
В этом уроке мы рассмотрим некоторые основные функции Aspose.HTML для .NET и предоставим пошаговые объяснения для каждого примера. К концу этого урока у вас будет четкое понимание того, как использовать Aspose.HTML для .NET в ваших приложениях .NET.
Предпосылки
Прежде чем мы углубимся в примеры, убедитесь, что у вас выполнены следующие предварительные условия:
Aspose.HTML for .NET: У вас должна быть установлена библиотека Aspose.HTML for .NET. Вы можете загрузить ее сссылка для скачивания.
Временная лицензия (необязательно): Если у вас нет действующей лицензии, вы можете получить временную лицензию уздесь.
Теперь давайте рассмотрим некоторые распространенные варианты использования Aspose.HTML для .NET.
Импорт пространств имен
В коде C# начните с импорта необходимых пространств имен:
using Aspose.Html;
using Aspose.Html.Rendering.Pdf;
using Aspose.Html.Rendering.Image;
using Aspose.Html.Rendering.Xps;
using Aspose.Html.Rendering.Pdf.Encryption;
using Aspose.Html.Drawing;
Конвертировать HTML в PDF
Шаг 1: Подготовка HTML-кода
var code = @"<span>Hello World!!</span>";
Шаг 2: Инициализация HTML-документа
using (var document = new HTMLDocument(code, "."))
Шаг 3: Создайте PDF-устройство и укажите выходной файл
using (var device = new PdfDevice("output.pdf"))
Шаг 4: Преобразование HTML в PDF
document.RenderTo(device);
Этот пример преобразует фрагмент HTML в документ PDF. Вы можете настроить код HTML и выходной файл по мере необходимости.
Установить пользовательский размер страницы
Шаг 1: Подготовка HTML-кода
var code = @"<span>Hello World!!</span>";
Шаг 2: Инициализация HTML-документа
using (var document = new HTMLDocument(code, "."))
Шаг 3: Создайте параметры рендеринга PDF-файла
var options = new PdfRenderingOptions()
{
PageSetup =
{
AnyPage = new Page(
new Size(
Length.FromInches(5),
Length.FromInches(2)))
}
};
Шаг 4: Создайте PDF-устройство и укажите параметры и выходной файл
using (var device = new PdfDevice(options, "output.pdf"))
Шаг 5: Преобразование HTML в PDF
document.RenderTo(device);
В этом примере показано, как задать индивидуальный размер страницы для итогового PDF-документа.
Настроить разрешение
Шаг 1: Подготовьте HTML-код и сохраните его в файле
var code = @"
<style>
p
{
background: blue;
}
@media(min-resolution: 300dpi)
{
p
{
/* high-resolution screen color */
background: green
}
}
</style>
<p>Hello World!!</p>";
System.IO.File.WriteAllText("document.html", code);
Шаг 2: Инициализация HTML-документа
using (var document = new HTMLDocument("document.html"))
Шаг 3: Создайте параметры рендеринга PDF для низкого разрешения
var options = new PdfRenderingOptions()
{
HorizontalResolution = 50,
VerticalResolution = 50
};
Шаг 4: Создайте устройство PDF и укажите параметры и выходной файл для низкого разрешения
using (var device = new PdfDevice(options, "output_resolution_50.pdf"))
Шаг 5: Преобразование HTML в PDF для низкого разрешения
document.RenderTo(device);
Шаг 6: Создайте параметры рендеринга PDF для высокого разрешения
options = new PdfRenderingOptions()
{
HorizontalResolution = 300,
VerticalResolution = 300
};
Шаг 7: Создайте устройство PDF и укажите параметры и выходной файл для высокого разрешения
using (var device = new PdfDevice(options, "output_resolution_300.pdf"))
Шаг 8: Преобразование HTML в PDF для получения высокого разрешения
document.RenderTo(device);
В этом примере показано, как настроить разрешение при преобразовании HTML в PDF, учитывая экраны как с низким, так и с высоким разрешением.
Укажите цвет фона
Шаг 1: Подготовьте HTML-код и сохраните его в файле
var code = @"<p>Hello World!!</p>";
System.IO.File.WriteAllText("document.html", code);
Шаг 2: Инициализация HTML-документа
using (var document = new HTMLDocument("document.html"))
Шаг 3: Инициализация параметров рендеринга PDF с помощью цвета фона
var options = new PdfRenderingOptions()
{
BackgroundColor = System.Drawing.Color.Cyan
};
Шаг 4: Создайте PDF-устройство и укажите параметры и выходной файл
using (var device = new PdfDevice(options, "output.pdf"))
Шаг 5: Преобразование HTML в PDF
document.RenderTo(device);
В этом примере показано, как указать цвет фона при конвертации HTML в PDF.
Установить размеры левой и правой страницы
Шаг 1: Подготовка HTML-кода
var code = @"<style>div { page-break-after: always; }</style>
<div>First Page</div>
<div>Second Page</div>
<div>Third Page</div>
<div>Fourth Page</div>";
Шаг 2: Инициализация HTML-документа
using (var document = new HTMLDocument(code, "."))
Шаг 3: Создайте параметры рендеринга PDF с размерами левой и правой страницы
var options = new PdfRenderingOptions();
options.PageSetup.SetLeftRightPage(
new Page(new Size(400, 200)),
new Page(new Size(400, 100))
);
Шаг 4: Создайте PDF-устройство и укажите параметры и выходной файл
using (var device = new PdfDevice(options, "output.pdf"))
Шаг 5: Преобразование HTML в PDF
document.RenderTo(device);
В этом примере показано, как установить разные размеры страниц для левой и правой страниц при конвертации HTML в PDF.
Отрегулируйте размер страницы в соответствии с содержимым
Шаг 1: Подготовка HTML-кода
var code = @"<style>
div { page-break-after: always; }
</style>
<div style='border: 1px solid red; width: 400px'>First Page</div>
<div style='border: 1px solid red; width: 600px'>Second Page</div>";
Шаг 2: Инициализация HTML-документа
using (var document = new HTMLDocument(code, "."))
Шаг 3: Создайте параметры рендеринга PDF-файла
var options = new PdfRenderingOptions();
options.PageSetup.AnyPage = new Page(new Size(500, 200));
options.PageSetup.AdjustToWidestPage = true;
Шаг 4: Создайте PDF-устройство и укажите параметры и выходной файл
using (var device = new PdfDevice(options, "output.pdf"))
Шаг 5: Преобразование HTML в PDF
document.RenderTo(device);
В этом примере показано, как подогнать размер страницы под максимально широкое содержимое при конвертации HTML в PDF.
Укажите разрешения PDF
Шаг 1: Подготовка HTML-кода
var code = @"<div>Hello World!!</div>";
Шаг 2: Инициализация HTML-документа
using (var document = new HTMLDocument(code, "."))
Шаг 3: Создайте параметры рендеринга PDF с разрешениями
var options = new PdfRenderingOptions();
options.Encryption = new PdfEncryptionInfo(
"user_pwd",
"owner_pwd",
PdfPermissions.PrintDocument,
PdfEncryptionAlgorithm.RC4_128
);
Шаг 4: Создайте PDF-устройство и укажите параметры и выходной файл
using (var device = new PdfDevice(options, "output.pdf"))
Шаг 5: Преобразование HTML в PDF
document.RenderTo(device);
В этом примере показано, как указать разрешения и шифрование при преобразовании HTML в защищенный PDF.
Укажите параметры, специфичные для изображения
Шаг 1: Подготовка HTML-кода
var code = @"<div>Hello World!!</div>";
Шаг 2: Инициализация HTML-документа
using (var document = new HTMLDocument(code, "."))
Шаг 3: Создание параметров рендеринга изображения
var options = new ImageRenderingOptions()
{
Format = ImageFormat.Jpeg,
SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.None,
VerticalResolution = Resolution.FromDotsPerInch(75),
HorizontalResolution = Resolution.FromDotsPerInch(75),
};
Шаг 4: Создайте устройство изображения и укажите параметры и выходной файл
using (var device = new ImageDevice(options, "output.jpg"))
Шаг 5: Преобразование HTML в изображение
document.RenderTo(device);
В этом примере показано, как преобразовать HTML в изображение с определенными параметрами рендеринга, такими как формат, разрешение и режим сглаживания.
Укажите параметры рендеринга XPS
Шаг 1: Подготовка HTML-кода
var code = @"<span>Hello World!!</span>";
Шаг 2: Инициализация HTML-документа
using (var document = new HTMLDocument(code, "."))
Шаг 3: Создание параметров рендеринга XPS с учетом размера страницы
var options = new XpsRenderingOptions();
options.PageSetup.AnyPage = new Page(
new Size(
Length.FromInches(5),
Length.FromInches(2)
)
);
Шаг 4: Создайте устройство XPS и укажите параметры и выходной файл
using (var device = new XpsDevice(options, "output.xps"))
Шаг 5: Преобразование HTML в XPS
document.RenderTo(device);
В этом примере показано, как преобразовать HTML в XPS с пользовательскими размерами страницы и параметрами рендеринга.
Объединить несколько HTML-документов в PDF
Шаг 1: Подготовка HTML-кода для нескольких документов
var code1 = @"<br><span style='color: green'>Hello World!!</span>";
var code2 = @"<br><span style='color: blue'>Hello World!!</span>";
var code3 = @"<br><span style='color: red'>Hello World!!</span>";
Шаг 2: Создание HTML-документов для слияния
using (var document1 = new HTMLDocument(code1, "."))
using (var document2 = new HTMLDocument(code2, "."))
using (var document3 = new HTMLDocument(code3, "."))
Шаг 3: Инициализация HTML-рендерера
using (HTMLRenderer renderer = new HTMLRenderer())
Шаг 4: Создайте устройство PDF для объединенного вывода
using (var device = new PdfDevice("output.pdf"))
Шаг 5: Объедините HTML-документы в PDF
renderer.Render(device, document1, document2, document3);
В этом примере показано, как объединить несколько HTML-документов в один PDF-файл с помощью Aspose.HTML для .NET.
Установить тайм-аут рендеринга
Шаг 1: Подготовка HTML-кода с помощью JavaScript
var code = @"
<script>
var count = 0;
setInterval(function()
{
var element = document.createElement('div');
var message = (++count) + '. ' + 'Hello World!!';
var text = document.createTextNode(message);
element.appendChild(text);
document.body.appendChild(element);
}, 1000);
</script>";
Шаг 2: Инициализация HTML-документа
using (var document = new HTMLDocument(code, "."))
Шаг 3: Инициализация HTML-рендерера
using (HTMLRenderer renderer = new HTMLRenderer())
Шаг 4: Создайте устройство PDF и установите время ожидания рендеринга
using (var device = new PdfDevice("output.pdf"))
Шаг 5: Преобразование HTML в PDF с тайм-аутом
renderer.Render(device, TimeSpan.FromSeconds(5), document);
В этом примере показано, как установить тайм-аут рендеринга при конвертации HTML в PDF, что может быть полезно при работе с динамическим контентом или длительными скриптами.
Заключение
Aspose.HTML для .NET — это универсальная библиотека, которая позволяет разработчикам эффективно работать с HTML-документами. В этом руководстве мы рассмотрели различные примеры, от базовых преобразований HTML в PDF до более продвинутых функций, таких как пользовательские размеры страниц, разрешения и разрешения. Следуя этим примерам, вы сможете использовать весь потенциал Aspose.HTML для .NET в своих приложениях .NET.
Если у вас есть какие-либо вопросы или вам нужна дополнительная помощь, не стесняйтесь посетитьФорум Aspose.HTML за поддержку и руководство.
Часто задаваемые вопросы
В1. Что такое Aspose.HTML для .NET?
A1: Aspose.HTML для .NET — это библиотека .NET, которая позволяет разработчикам программно манипулировать и преобразовывать HTML-документы. Она предлагает широкий спектр функций для работы с HTML-контентом, включая HTML в PDF, XPS и преобразование изображений, а также расширенные параметры рендеринга.
В2. Где я могу скачать Aspose.HTML для .NET?
A2: Вы можете загрузить Aspose.HTML для .NET с сайтассылка для скачивания.
В3. Нужна ли мне лицензия для использования Aspose.HTML для .NET?
A3: Хотя вы можете использовать Aspose.HTML для .NET без лицензии, рекомендуется получить лицензию для производственного использования, чтобы разблокировать все функции и удалить все водяные знаки или ограничения.
В4. Как защитить мои PDF-файлы, созданные с помощью Aspose.HTML для .NET?
A4: Вы можете указать разрешения PDF и настройки шифрования при рендеринге HTML в PDF с помощью Aspose.HTML для .NET. Это позволяет вам контролировать, кто может получать доступ и изменять полученные файлы PDF.
В5. Могу ли я конвертировать HTML в другие форматы, такие как XPS или изображения?
A5: Да, Aspose.HTML для .NET поддерживает преобразование HTML в различные форматы, включая PDF, XPS и изображения (например, JPEG). Вы можете настроить параметры преобразования в соответствии с вашими конкретными требованиями.