PDFSharp — это библиотека .NET с открытым исходным кодом, предназначенная для обработки PDF-документов. Он завоевал расположение разработчиков своим богатым функционалом и простотой использования. Независимо от того, создаете ли вы, редактируете, объединяете, разделяете или конвертируете PDF-файлы, PDFSharp с легкостью справится с этим.
текст
Общие библиотеки классов PDF, используемые в настоящее время на платформе .NET.
Все они очень полезны, и мне особенно нравится QuestPDF, который предоставляет комплексный механизм макетирования на основе C# Fluent API, однако эти библиотеки либо являются коммерческими, и стоят дорого (я понимаю стоимость), но ежегодная плата составляет; слишком дорого.
Либо это открытый исходный код с условными ограничениями. Например, версия Spire с открытым исходным кодом имеет различные ограничения. Хотя iTextSharp не имеет ограничений, соглашение об открытом исходном коде (AGPL) недружелюбно, и использовать его в коммерческом программном обеспечении с закрытым исходным кодом стыдно. Я случайно обнаружил еще одну кроссплатформенную бесплатную библиотеку обработки PDF-файлов с открытым исходным кодом (лицензия MIT), основанную на .NET 6.
PDFSharp:https://docs.pdfsharp.net/,Библиотека также основана на .NET. Версия платформы https://pdfsharp.net/ 。.NET 6 Версия была выпущена только в прошлом году, и это относительно активное сообщество. https://forum.pdfsharp.net/。
Я попробовал его использовать, и он оказался довольно хорошим. В нем есть все необходимое. Простые PDF-файлы можно создавать напрямую с помощью библиотеки PDFSharp, а для редактирования более сложных предусмотрена MigraDoc.
Мое собственное небольшое приложение уже установлено в рабочей среде, и я думаю, что с этой библиотекой все в порядке.
Основные функции
1. Создание PDF-файла. Нет необходимости использовать уже существующие шаблоны: PDFSharp позволяет создавать PDF-документы непосредственно с нуля.
2. Вставка контента: поддерживает добавление текста, изображений, таблиц, графики и других многофункциональных элементов на страницы PDF.
3. Форматирование. Обеспечивает выбор шрифта, настройку цвета, настройку макета и другие функции управления стилем, которые помогут вам создавать индивидуально настроенные PDF-документы.
4. Объединение и разделение: возможность объединить несколько PDF-документов в один или разделить PDF-документ на несколько частей.
5. Шифрование и дешифрование. Установите параметры безопасности для файлов PDF, чтобы защитить содержимое документа от несанкционированного доступа.
Преимущества и особенности
Простота в использовании: PDFSharp предоставляет лаконичный API, который позволяет разработчикам быстро и легко приступить к работе над созданием и обработкой PDF-документов.
Комплексные функции: поддерживает различные операции с PDF, включая создание, редактирование, объединение, разделение, преобразование и шифрование и т. д. для удовлетворения различных потребностей.
PDFSharp широко используется в различных сценариях, таких как создание отчетов, создание электронных книг, создание счетов и контрактов и т. д. От этого могут получить выгоду как индивидуальные пользователи, так и бизнес-пользователи.
PDFSharp Документ
На сайте документации .NET Framework есть много примеров. Вы можете посмотреть.
Я использую это более грубо,использоватьMigraDocРедактировать документлист,Затем создайте PDF-файл. Когда у меня будет время, я попытаюсь инкапсулировать библиотеку расширений, подобную QuestPDF.,Мне очень нравится формат Fluent.
пример кода
Давайте создадим PDF-файл изображения ниже.
Создайте новый проект и внедрите PDFsharp и PDFsharp-MigraDoc через Nuget.
Если вы используете графическую библиотеку System.Drawing, вам не нужно ссылаться на SkiaSharp. В моем примере используется графическая библиотека SkiaSharp для облегчения кроссплатформенности.
Первое — импорт шрифтов
Поскольку PDFSharp сам по себе не поддерживает китайские шрифты, но обеспечивает пользовательскую обработку синтаксического анализатора, поэтому сначала мы реализуем анализатор китайских шрифтов.
Сначала импортируйте жирный шрифт в проект как встроенный ресурс, путь /Fonts/.
Создайте новый файл ChineseFontResolver.cs для реализации нашего китайского парсера.
Хорошо, приступим к созданию нашего PDF-файла.
На данный момент мы создали простой PDF-файл. Конечно, сюда не добавляется информация о файле, это просто сгенерированный контент. Если вам это нужно, вы можете посмотреть, как его настроить, на сайте документации.