Как удалить все разрывы страниц в Word с помощью C#

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

Действия по удалению разрывов страниц в Word с помощью C#

  1. Настройте среду разработки на использование Aspose.Words for .NET, чтобы устранить разрывы страниц.
  2. Загрузите целевой файл Word в объект Document и получите доступ ко всем paragraphs
  3. Проанализируйте все абзацы и проверьте разрывы страниц перед абзацем.
  4. Удалите разрывы страниц перед каждым абзацем
  5. Проанализируйте все прогоны в каждом абзаце и замените все разрывы страниц пустой строкой.
  6. Сохраните полученный файл Word без разрыва страницы.

Эти шаги описывают процесс удаления разрывов страниц в Word с помощью C#. Каждый файл Word содержит набор абзацев, где каждый абзац имеет свойство ParagraphFormat.PageBreakBefore, для которого необходимо установить значение «false», чтобы удалить разрывы с самого начала. В свою очередь, каждый абзац имеет набор прогонов, где каждый прогон может иметь разрывы страниц в нескольких местах, которые можно удалить, заменив их пустой строкой.

Код для устранения разрывов страниц в Word с использованием С#

using Aspose.Words;
class Program{
static void Main(string[] args) // Remove page breaks in a Word file using C#
{
// Set PDF license
new License().SetLicense("Aspose.Total.lic");
// Load the sample Word file having page breaks in it
Document doc = new Document("DocWithPageBreaks.docx");
// Get access to all the paragraphs
NodeCollection docParagraphs = doc
.GetChildNodes(NodeType.Paragraph, true);
foreach (Paragraph currentPara in docParagraphs)
{
// Check if the page break is there before
// the paragraph
if (currentPara.ParagraphFormat.PageBreakBefore)
{
// Remove the page break from the start
currentPara.ParagraphFormat
.PageBreakBefore = false;
}
// Parse through all the runs in the paragraph
foreach (Run currentRun in currentPara.Runs)
{
// Check page break
if (currentRun.Text.Contains(ControlChar.PageBreak))
{
// Replace the page break with an empty string
currentRun.Text = currentRun.Text
.Replace(ControlChar.PageBreak, string.Empty);
}
}
}
// Save the resultant DOCX without any page break in it
doc.Save("DocxWithoutPageBreaks.docx");
}
}

В этом коде мы наблюдали как удалить разрыв страницы в Word с помощью C#. Он использует метод GetChildNodes(), предоставляя NodeType.Paragraph в качестве аргумента для получения доступа к коллекции абзацев. Текст в каждом прогоне может иметь различные типы управляющих символов, таких как разрывы строк, разрывы абзацев и разрывы столбцов, которые также можно удалить с помощью того же метода, который используется для разрывов страниц.

Эта статья научила нас удалять разрывы страниц в файле Word. Если вы хотите узнать, как удалить пустые страницы в файле Word, обратитесь к статье как удалить пустую страницу в Word с помощью C#.

 Русский