Как вставить текст в существующий PDF-документ в определенной позиции с помощью C# и .NET

  1. Добавьте SautinSoft.Document из Nuget.
  2. Загрузите PDF-документ.
  3. Найдите конкретное содержимое.
  4. Вставьте текст перед содержимым
  5. Сохраните документ в формате PDF.

Полный код

using SautinSoft.Document;

namespace Example
{
    class Program
    {
        static void Main(string[] args)
        {
            Paragraph();
        }
        /// <summary>
        /// Insert a text into an existing PDF document in a specific position.
        /// </summary>
        /// </remarks>
        /// Details: https://sautinsoft.com/products/document/help/net/developer-guide/insert-text-to-pdf-document-net-csharp-vb.php
        /// </remarks>
       static void InsertText()
        {
            string filePath = @"..\..\example.pdf";
            string fileResult = @"Result.pdf";
            DocumentCore dc = DocumentCore.Load(filePath);

            // Find a position to insert text. Before this text: "> in this position".
            ContentRange cr =  dc.Content.Find("> in this position").FirstOrDefault();

            // Insert new text.
            if (cr != null)
                cr.Start.Insert("New text!");
            dc.Save(fileResult);
            System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(filePath) { UseShellExecute = true });
            System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(fileResult) { UseShellExecute = true });

        }
    }
}

Скачать

Imports System
Imports System.IO
Imports SautinSoft.Document

Module Sample
    Sub Main()
        Paragraph()
    End Sub

    ''' <summary>
    ''' Insert a text into an existing PDF document in a specific position.
    ''' </summary>
    ''' </remarks>
    ''' Details: https://sautinsoft.com/products/document/help/net/developer-guide/insert-text-to-pdf-document-net-csharp-vb.php
    ''' </remarks>
   Sub InsertText()
        Dim filePath As String = "..\example.pdf"
        Dim fileResult As String = "Result.pdf"
        Dim dc As DocumentCore = DocumentCore.Load(filePath)

        ' Find a position to insert text. Before this text: "> in this position".
        Dim cr As ContentRange = dc.Content.Find("> in this position").FirstOrDefault()

        ' Insert new text.
        If cr IsNot Nothing Then
            cr.Start.Insert("New text!")
        End If
        dc.Save(fileResult)
        System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(filePath) With {.UseShellExecute = True})
        System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(fileResult) With {.UseShellExecute = True})
    End Sub
End Module

Скачать


Если вам нужен пример кода или у вас есть вопрос: напишите нам по адресу [email protected] или спросите в онлайн-чате (правый нижний угол этой страницы) или используйте форму ниже:



Вопросы и предложения всегда приветствуются!

Мы разрабатываем компоненты .Net с 2002 года. Мы знаем форматы PDF, DOCX, RTF, HTML, XLSX и Images. Если вам нужна помощь в создании, изменении или преобразовании документов в различных форматах, мы можем вам помочь. Мы напишем для вас любой пример кода абсолютно бесплатно.