Расширенная PDF библиотека для C# и .NET
SautinSoft.Pdf - это мощная библиотека для работы с PDF-документами в .NET, включая .NET Core и .NET Framework. Создана для C# разработчиков, кому необходимо взаимодействовать с PDF документами в своих приложениях.
Основные функции:
- Извлечение текста из PDF: SautinSoft.Pdf позволяет извлекать текст из PDF-документов с помощью простого API, что делает его идеальным для дальнейшей обработки данных.
 - Создание и Запись PDF: Библиотека предоставляет возможности для создания новых PDF-файлов, редактирования содержимого, добавления изображений, изменения форматирования текста, удаления страниц и сохранения документа в нужной версии PDF.
 - Извлечение изображений: Используя SautinSoft.Pdf, вы можете извлекать растровую и векторную графику из PDF-документов, а также фильтровать изображения по минимальному и максимальному размеру.
 - Объединение и Разделение PDF-документов: Библиотека предоставляет инструменты для вставки, удаления или изменения порядка страниц, а также для объединения, клонирования или разделения документов.
 - Интерактивные формы: Пользователи могут заполнять, редактировать и создавать новые интерактивные формы, а также автоматически заполнять данные из любого существующего источника. Поддерживается процесс "сглаживания" интерактивных PDF-форм, превращая их в статическое содержимое.
 
Преимущества использования SautinSoft.Pdf:
- Полнофункциональная библиотека: SautinSoft.Pdf позволяет выполнять любые операции с PDF-документами, включая создание, чтение, редактирование, печать, разделение и объединение, цифровую подпись, извлечение текста и изображений, конвертацию в PDF/A, сжатие и защиту документов.
 - Независимость и скорость: Библиотека не зависит от Adobe или других сторонних программ, полностью написана на управляемом C# и обеспечивает высокую скорость обработки.
 - Поддержка различных платформ: SautinSoft.Pdf поддерживает Windows (10, 11, Server 2016-2022), Linux (Debian, CentOS, Ubuntu), macOS (Intel + Apple silicon), а также облачные платформы, такие как AWS, Kubernetes, Azure и Docker.
 
Лицензирование и поддержка:
СаутинСофт предлагает три типа лицензий, включая бесплатную техническую поддержку и бесплатные обновления в течение одного года. Техническая поддержка включает помощь через веб-чат, электронную почту и групповые чаты в Teams.
Заключение:
SautinSoft.Pdf — идеальное решение для разработчиков, которым необходимо интегрировать расширенные возможности работы с PDF в свои .NET-приложения. Простое API, высокая производительность и поддержка множества платформ делают SautinSoft.Pdf удобным инструментом для разработки и расширения функциональности приложений, работающих с PDF.
Продукт полностью написан на C# и поддерживает все версии PDF — от старых 1.0 до новейших 2.0, включая различные PDF/A стандарты.
Создание PDF-документов на C#
Используйте библиотеку SautinSoft.Pdf для создания PDF-документов в приложениях, написанных на платформах .NET Framework и .NET.
Вы можете добавлять верхние и нижние колонтитулы, страницы, таблицы и абзацы. Продукт автоматически делит содержимое на страницы. Добавляйте текст, изображения и векторную графику в ваши PDF.
Возможно работать с интерактивными формами PDF, включая заполнение, редактирование и создание новых форм, аннотации, закладки и слои. Вы можете добавлять как одну подпись, так и несколько подписей в PDF-документы на C#, а также защищать паролем созданные PDF-документы.
using SautinSoft.Pdf;
using (var document = new PdfDocument())
  {
   var page = document.Pages.Add();
   var formattedText = new PdfFormattedText();
   formattedText.FontSize = 15;
   formattedText.FontFamily = new PdfFontFamily("Calibri");
   formattedText.Color = PdfColor.FromRgb(1, 0, 0);
   formattedText.Append("Hello World!");
   page.Content.DrawText(formattedText, new PdfPoint(110, 650));
   document.Save("Hello World.pdf");
  }
                                    Извлечение текста из PDF на C#
Для извлечения текста из PDF-документов в .NET среде разработки используйте библиотеку SautinSoft.Pdf. Как для извлечения форматированного текста, так и таблиц для дальнейшего анализа.
Дополнительно можно извлечь дополнительную информацию (координаты, границы, шрифт, цвет, стиль) о каждом фрагменте текста, что упрощает поиск и выделение определенных фраз в PDF-документах.
Поддерживаются все мировые языки и направления текста: справа налево и двунаправленный текст.
using SautinSoft.Pdf;
  using (var document = PdfDocument.Load(pdfFile))
  {
    var text = page.Content.GetText(new PdfTextOptions
      {
        FontFace = new PdfFontFace("Consolas"),
        Order = PdfTextOrder.Reading,
        Whitespaces = PdfTextWhitespaces.Space | PdfTextWhitespaces.Blank | PdfTextWhitespaces.NewLine
          }).ToString();
          Console.WriteLine(text);
                    }
                                    Поиск и замена текста внутри PDF на C#
Библиотека SautinSoft.Pdf предоставляет C#-разработчикам удобные инструменты для поиска и замены текста в PDF-документах. Функция поиска и замены позволяет найти определенный текст и заменить его новым содержимым, включая настройку форматирования нового текста.
SDK позволяет легко интегрировать функции замены текста в PDF-документы, обеспечивая эффективную и точную обработку текста.
using (PdfDocument document = PdfDocument.Load("Find.pdf"))
 {
     foreach (var page in document.Pages)
     {
         var search = page.Content.GetText().Find("North");
         foreach (var text in search)
         {
             var element = text.Elements.First();
             var font = element.Format.Text.Font;
             double size = Math.Min(text.Bounds.Height, font.Size * element.TextTransform.M11);
             using (var formattedText = new PdfFormattedText() { Font = font, Color = PdfColor.FromRgb(1, 0, 0), FontSize = size })
             {
                 formattedText.Append("South");
                 page.Content.DrawText(formattedText, new PdfPoint(text.Bounds.Left, text.Bounds.Bottom));
             }
             text.Redact();
         }
     }
     document.Save("Replace.pdf");
 }
                                    Цифровые подписи в PDF на C#
Интеграция функции цифровой подписи в PDF-документы, включая возможность добавления нескольких подписей в один PDF-файл. Использование SautinSoft.Pdf в C# защищает документ от несанкционированных изменений и подтверждает его подлинность. API, который прост и интуитивно понятен, позволяет разработчикам легко внедрять эту функциональность в свои программные продукты.
Библиотека также предоставляет функции для добавления цифровой подписи в PDF-документ, включая рукописное изображение, фиксацию времени подписания, защиту паролем и доступ к аттрибутам подписи.
using SautinSoft.Pdf;
var document = PdfDocument.Load(pdfFile);
{
   // Add a signature field.
   var sig = document.Form.Fields.AddSignature(document.Pages[0], 10, 10, 250, 50);
   // Create new Signer.
   PdfSigner pdfSigner = new PdfSigner(@"..\..\..\sautinsoft.pfx", "123456789");
   // Configure signer.
   pdfSigner.Timestamper = new PdfTimestamper(@"https://tsa.cesnet.cz:5817/tsa");
   pdfSigner.SignatureFormat = PdfSignatureFormat.CAdES;
   pdfSigner.SignatureLevel = PdfSignatureLevel.PAdES_B_LTA;
   pdfSigner.HashAlgorithm = PdfHashAlgorithm.SHA256;
   pdfSigner.Location = "Test workplace";
   pdfSigner.Reason = "Test";
   var im = PdfImage.Load(@"..\..\..\JPEG2.jpg");
   sig.Appearance.Icon = im;
   sig.Appearance.TextPlacement = PdfTextPlacement.TextRightOfIcon;
   // Sign PDF Document.
   var si = sig.Sign(pdfSigner);
   // Save PDF Document.
   document.Save();
}
                                    Безвозвратное удаление текста (redact text) в PDF на C#
С помощью SautinSoft.Pdf вы можете легко и эффективно полностью удалить текст в PDF-документах прямо из приложения C#. Библиотека предоставляет удобные инструменты для сокрытия конфиденциальной информации, исправления опечаток и внесения других изменений в текст PDF-файлов.
Удаление (redact) в целях безопасности подразумевает необратимое уничтожение выбранных данных в документах, что исключает возможность их последующего восстановления и гарантирует строгое соблюдение стандартов информационной безопасности.
using SautinSoft.Pdf;
using (PdfDocument document = PdfDocument.Load(@"Input.pdf"))
 {
   // Assume we want to redact (delete) the word "the"
      string textToRedact = "the";
      foreach (var page in document.Pages)
      {
         var texts = page.Content.GetText().Find(textToRedact);
         foreach (var text in texts)
         {
            text.Redact();
            // Draw a green rectangle instead of removed text.
            var bounds = text.Bounds;
            var rectangle = page.Content.Elements.AddPath().AddRectangle(new PdfPoint(bounds.Left, bounds.Bottom), new PdfSize(bounds.Width, bounds.Height));
               rectangle.Format.Fill.IsApplied = true;
               rectangle.Format.Fill.Color = PdfColor.FromRgb(0, 1, 0);
               }
            }
           document.Save(@"Redacted.pdf");
          }
                                    Рисование текста и графики в PDF на C#
Библиотека SautinSoft.Pdf предоставляет C#-разработчикам удобные инструменты для работы с текстом и графикой в документах PDF. Рисование текста и графики позволяет задать расположение и форматирование вставленного текста и изображений.
SautinSoft.Pdf поможет легко интегрировать функции рисования текста и графики в PDF в любое ваше приложение.
using SautinSoft.Pdf;
  using (var document = new PdfDocument())
  {
    // Add a new page.
    var page = document.Pages.Add();
    double margin = 10;
       // Set up and fill the PdfFormattedText object.
    formattedText.TextAlignment = PdfTextAlignment.Left;
    formattedText.MaxTextWidth = 100;
    formattedText.Append("This text is left aligned, ").
    Append("placed in the top-left corner of the page and ").
    Append("its width should not exceed 100 points.");
    // Draw left-aligned text in the top-left corner of the page.
    page.Content.DrawText(formattedText,
       new PdfPoint(margin,
       page.CropBox.Top - margin - formattedText.Height));
    // Clear the PdfFormattedText object.
    formattedText.Clear();
}
                                    Интерактивные формы в PDF на C#
Интерактивные формы PDF — это мощный инструмент для сбора данных и взаимодействия с пользователем. Библиотека SautinSoft.Pdf предоставляет разработчикам удобные инструменты для работы с этими формами, позволяя им создавать, читать и заполнять их в приложениях C# и .NET.
Для создания интерактивных форм SautinSoft.Pdf использует класс PdfDocument, который предоставляет доступ к свойству Form. Используя это свойство, вы можете добавлять различные типы полей формы, такие как текстовые поля, переключатели, флажки, раскрывающиеся списки, поля подписи и кнопки.
using SautinSoft.Pdf;
using (var document = PdfDocument.Load(pdfFile))
   // Group fields by name because all fields with the same name are actually different representations (widget annotations) of the same field.
   // Radio button fields are usually grouped. Other field types are rarely grouped.
   foreach (var fieldGroup in document.Form.Fields.GroupBy(field => field.Name))
   {
      var field = fieldGroup.First();
      fieldType = field.FieldType;
      fieldName = '"' + field.Name + '"';
      fieldValue = field.Value;
      foreach (var widgetField in fieldGroup)
        {
         switch (widgetField.FieldType)
         {
           case PdfFieldType.CheckBox:
           case PdfFieldType.RadioButton:
              // Check box and radio button are toggle button fields.
              var toggleField = (PdfToggleButtonField)widgetField;
              fieldExportValueOrChoice = toggleField.FieldType == PdfFieldType.CheckBox ?
                    writer.WriteLine(separator);
                }
            Console.Write(writer.ToString());
        }
                                    Почему стоит выбрать SautinSoft.Pdf?
Полный набор инструментов для работы с PDF
Библиотека может выполнять любые операции с PDF-документами: чтение, запись и редактирование.
Быстрая и независимая
SautinSoft.Pdf полностью написана на C# и не имеет зависимостей. Обеспечивает фантастическую скорость.
Windows, Linux и macOS
Разработка для любой .NET платформы и основных операционных систем.
Удобный доступ к структуре PDF-документа.
Манипулирование базовыми PDF-объектами (массив, словарь, поток и т. д.) и высокоуровневыми объектами (страница, текст, графика, ссылки, аннотации, поля и т. д.).
Интерактивные формы и аннотации
Заполнение, редактирование и создание интерактивных форм и различных аннотаций.
Лицензирование и бесплатная поддержка
Простые лицензии с бесплатной технической поддержкой и обновлениями в течение одного года.
Основные характеристики
Извлечение текста
API для извлечения любого текста, таблиц, изображений со всей информацией и готовностью к дальнейшей обработке.
Редактирование
Окончательное редактирование конфиденциальной информации в PDF. Удаление определенных данных или текста.
Создание, чтение, запись, редактирование
Библиотека имеет собственный парсер и редактор, которые поддерживают все версии и стандарты PDF.
Рисование текста и графики
Позволяет устанавливать местоположение и форматирование для вставленного текста и изображений.
Интерактивные формы
Поддерживает поля формы, такие как текст, переключатель, флажок, выпадающий список и список.
Простой API
Управление PDF внутри вашего приложения:
- Чтение текста из PDF.
 - Создание и запись PDF.
 - Конвертация изображений в PDF.
 - Печать документов PDF.
 - Объединение файлов PDF.
 - Разделение PDF по страницам.
 - Поиск и замена текста в PDF.
 - Заполнение интерактивных форм PDF.
 - Шифрование документов PDF.
 - Цифровая подпись PDF.
 - Клонирование или импорт страниц.
 - Форматирование содержимого PDF.
 - Добавление водяных знаков в PDF.
 - Получение и настройка свойств документа.
 - Экспорт и импорт изображений в PDF.
 - Добавление векторного графического содержимого.
 - Получение, создание или редактирование закладок.
 - Добавление гиперссылок в PDF.
 - Управление потоками и ресурсами.
 
Let us say, to merge multiple PDF documents in C#:
using SautinSoft.Pdf;
class Program
{
	static void Main()
	{
		// List of source files.
		var fileNames = new string[]
		{
			"Doc1.pdf",
			"Doc2.pdf",
			"Doc3.pdf"
		};
		using (var document = new PdfDocument())
		{
			// Merge multiple PDF files into single PDF.
			foreach (var fileName in fileNames)
			    using (var source = PdfDocument.Load(fileName))
			        document.Pages.Kids.AddClone(source.Pages);
			document.Save("Merged.pdf");
		}
	}
}
                                            Расширенные возможности
                                        На самом деле компонент может предоставить вам множество опций для работы с PDF. Смотрите Руководство разработчика, чтобы узнать простые, продвинутые и сложные примеры, оно содержит много примеров.
Простое лицензирование
Нам доверяют ведущие мировые компании