Удалите определенный абзац в DOCX и сохраните его как новый документ PDF, используя C# и .NET.

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

Этот пример кода показывает нам, как удалить из документа все параграфы, содержащие слово "Jack".

Здесь вы можете скачать исходный DOCX файл и выходной результат

Полный код

using System;
using System.IO;
using System.Linq;
using SautinSoft.Document;

namespace Example
{
    class Program
    {
        static void Main(string[] args)
        {
            // Get your free 100-day key here:   
            // https://sautinsoft.com/start-for-free/

            DeleteParagraphs();
        }
        /// <summary>
        /// Deletes a specific paragraphs in an existing DOCX and save it as new PDF.
        /// </summary>
        /// <remarks>
        /// Details: https://sautinsoft.com/products/document/help/net/developer-guide/delete-paragraphs-in-docx-document-net-csharp-vb.php
        /// </remarks>
        static void DeleteParagraphs()
        {
            string filePath = @"..\..\..\example.docx";
            string fileResult = @"Result.pdf";

            DocumentCore dc = DocumentCore.Load(filePath);

            // Note, remove paragraphs only inside the first section.
            Section section = dc.Sections[0];

            // Let's remove all paragraphs containing the text "Jack".
            for (int i = 0; i < section.Blocks.Count; i++)
            {
                if (section.Blocks[i].Content.Find("Jack").Count() > 0)
                {
                    section.Blocks.RemoveAt(i);
                    i--;
                }
            }
            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 });
        }
    }
}

Download

Imports System
Imports System.IO
Imports System.Linq
Imports SautinSoft.Document

Namespace Example
    Friend Class Program
        Shared Sub Main(ByVal args() As String)
            DeleteParagraphs()
        End Sub
        ''' Get your free 100-day key here:   
        ''' https://sautinsoft.com/start-for-free/
        ''' <summary>
        ''' Deletes a specific paragraphs in an existing DOCX and save it as new PDF.
        ''' </summary>
        ''' <remarks>
        ''' Details: https://sautinsoft.com/products/document/help/net/developer-guide/delete-paragraphs-in-docx-document-net-csharp-vb.php
        ''' </remarks>
        Private Shared Sub DeleteParagraphs()
            Dim filePath As String = "..\..\..\example.docx"
            Dim fileResult As String = "Result.pdf"

            Dim dc As DocumentCore = DocumentCore.Load(filePath)

            ' Note, remove paragraphs only inside the first section.
            Dim section As Section = dc.Sections(0)

            ' Let's remove all paragraphs containing the text "Jack".
            Dim i As Integer = 0
            Do While i < section.Blocks.Count
                If section.Blocks(i).Content.Find("Jack").Count() > 0 Then
                    section.Blocks.RemoveAt(i)
                    i -= 1
                End If
                i += 1
            Loop
            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 Class
End Namespace

Download


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



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

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