В этом пошаговом руководстве показано, как удалить все разрывы страниц в Word с помощью C#. В нем есть сведения о настройке среды разработки, список задач программирования и исполняемый пример кода для удаления разрыва страницы в Word с помощью C#. Он поделится подробностями о структуре документа Word и различных типах разрывов страниц, обнаруженных в файле Word.
Действия по удалению разрывов страниц в Word с помощью C#
- Настройте среду разработки на использование Aspose.Words for .NET, чтобы устранить разрывы страниц.
- Загрузите целевой файл Word в объект Document и получите доступ ко всем paragraphs
- Проанализируйте все абзацы и проверьте разрывы страниц перед абзацем.
- Удалите разрывы страниц перед каждым абзацем
- Проанализируйте все прогоны в каждом абзаце и замените все разрывы страниц пустой строкой.
- Сохраните полученный файл 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#.