1. Товары
  2.   PDF
  3.   .NET
  4.   QuestPDF
 
  

Бесплатные API .NET для обработки PDF-документов

Библиотека .NET с открытым исходным кодом для создания, редактирования, загрузки и управления PDF-файлами. Добавляйте новые страницы, таблицы, изображения, текст и фигуры в файлы PDF.

QuestPDF — это очень полезная современная библиотека .NET с открытым исходным кодом, которая позволяет разработчикам программного обеспечения с легкостью создавать, читать, изменять и манипулировать PDF-документами. Библиотека очень многофункциональна и предлагает механизм компоновки, разработанный с учетом полной поддержки пейджинга. Библиотека очень проста в обращении и, несомненно, может ускорить ваш жизненный цикл разработки. Библиотека поддерживает возможность горячей перезагрузки, что означает, что она предоставляет разработчикам результаты в реальном времени без необходимости перекомпиляции кода.

Библиотека QuestPDF очень гибкая, и ее очень легко создавать, настраивать и управлять некоторыми из самых сложных документов с помощью всего нескольких строк кода. В библиотеке есть несколько других функций, таких как рисование простого текста, рисование текста с пользовательским стилем, поддержка разбиения на страницы, поддержка пользовательских шрифтов, межбуквенный интервал, настраиваемый интервал между абзацами, поддержка Unicode, вставка изображений, управление соотношением сторон изображения, визуализация границы, вставка гиперссылки, содержание и поворот изображений и так далее.

Previous Next

Начало работы с QuestPDF

Библиотека QuestPDF доступна в виде пакета nuget. Поэтому настоятельно рекомендуется использовать NuGet для установки QuestPDF в ваш проект. Пожалуйста, используйте следующую команду для успешной установки.

Установите QuestPDF из Nuget

// Package Manager
Install-Package QuestPDF
// .NET CLI
dotnet add package QuestPDF
// Package reference in .csproj file

Вы также можете установить его вручную; загрузите файлы последней версии напрямую из репозитория GitHub.

Простое создание PDF-файлов с помощью библиотеки .NET.

Библиотека PDF с открытым исходным кодом QuestPDF позволяет разработчикам программного обеспечения использовать всего пару простых команд кода .NET для создания документов PDF в своих собственных приложениях. Библиотека позволяет разработчикам легко определять размер страницы, поля, цвет фона, стиль текста, размер шрифта, верхний и нижний колонтитулы, содержимое страницы, интервалы и так далее. Также очень легко обновить существующие PDF-файлы.

Создавайте PDF-файлы с помощью библиотеки .NET.

 using QuestPDF.Fluent;
using QuestPDF.Helpers;
using QuestPDF.Infrastructure;
// code in your main method
Document.Create(container =>
{
    container.Page(page =>
    {
        page.Size(PageSizes.A4);
        page.Margin(2, Unit.Centimetre);
        page.PageColor(Colors.White);
        page.DefaultTextStyle(x => x.FontSize(20));
        page.Header()
            .Text("Hello PDF!")
            .SemiBold().FontSize(36).FontColor(Colors.Blue.Medium);
        page.Content()
            .PaddingVertical(1, Unit.Centimetre)
            .Column(x =>
            {
                x.Spacing(20);
                x.Item().Text(Placeholders.LoremIpsum());
                x.Item().Image(Placeholders.Image(200, 100));
            });
        page.Footer()
            .AlignCenter()
            .Text(x =>
            {
                x.Span("Page ");
                x.CurrentPageNumber();
            });
    });
})
.GeneratePdf("hello.pdf");

Управление текстом и форматированием через C# API

Библиотека QuestPDF предоставляет несколько важных функций для обработки вставки текста, а также рисования текста внутри документов PDF. Это позволяет разработчикам рисовать текст со стилем по умолчанию, а также с пользовательским стилем, нижним и верхним индексом, настраивать текстовые строки, настраивать интервал между буквами, выравнивание шрифта, устанавливать шаблон типографики, настраиваемый интервал между абзацами, устанавливать направление текста, вставлять номера страниц, добавлять гиперссылки и т. д. на.

Нижний и верхний индекс в файлах PDF через библиотеку .NET

 .Text(text =>
{
    text.DefaultTextStyle(x => x.FontSize(20));
    text.ParagraphSpacing(10);
    var highlight = TextStyle.Default.BackgroundColor(Colors.Green.Lighten3);
    text.Span("E=mc").Style(highlight);
    text.Span("2").Superscript().Style(highlight);
    text.Span(" is the equation of mass–energy equivalence.");
    text.EmptyLine();
    text.Span("H").Style(highlight);
    text.Span("2").Subscript().Style(highlight);
    text.Span("O").Style(highlight);
    text.Span(" is the chemical formula for water.");
}); 

Добавление изображений в PDF и управление ими с помощью библиотеки C#

Библиотека PDF с открытым исходным кодом QuestPDF включает полную поддержку добавления статических и динамических изображений в приложения C# .NET. Разработчики программного обеспечения могут легко помещать статические изображения в свой PDF-документ в любом распространенном формате растрового изображения, таком как JPG, PNG, BMB и т. д. Для динамических изображений он предлагает гибкие макеты, поэтому трудно предсказать разрешение изображения. Для получения наилучшей четкости изображения рекомендуется генерировать изображения с указанным разрешением. Это очень полезно для создания карт / диаграмм.

Добавляйте изображения в PDF через .NET Library

 // it is possible to provide an image as:
// 1) a binary array
byte[] imageData = File.ReadAllBytes("path/to/logo.png")
container.Image(imageData)
// 2) a fileName
container.Image("path/myFile.png")
// 3) a stream
using var stream = new FileStream("logo.png", FileMode.Open);
container.Image(stream); 

Вставка таблиц в PDF через C# API

QuestPDF позволяет программистам создавать более сложные структуры, чем любая комбинация элементов Row и Column. Чтобы создать простой экземпляр таблицы, пользователям необходимо описать ширину каждого столбца, а затем поместить в него любое количество строк и столбцов. Библиотека поддерживает такие функции, как добавление верхнего или нижнего колонтитула таблицы, добавление новых строк, вставка новых ячеек, удаление ячеек, диапазоны строк и диапазоны столбцов, чередование ячеек и многое другое.

Создайте простую таблицу в файле PDF с помощью библиотеки .NET

 .Border(1)
.Table(table =>
{
    table.ColumnsDefinition(columns =>
    {
        columns.RelativeColumn();
        columns.RelativeColumn();
        columns.RelativeColumn();
        columns.RelativeColumn();
    });
    // by using custom 'Element' method, we can reuse visual configuration
    table.Cell().Row(1).Column(4).Element(Block).Text("A");
    table.Cell().Row(2).Column(2).Element(Block).Text("B");
    table.Cell().Row(3).Column(3).Element(Block).Text("C");
    table.Cell().Row(4).Column(1).Element(Block).Text("D");
    // for simplicity, you can also use extension method described in the "Extending DSL" section
    static IContainer Block(IContainer container)
    {
        return container
            .Border(1)
            .Background(Colors.Grey.Lighten3)
            .ShowOnce()
            .MinWidth(50)
            .MinHeight(50)
            .AlignCenter()
            .AlignMiddle();
    }
});
 Русский