Тази статия описва как да премахнете празна страница в Word с помощта на Python. Има подробности за настройка на средата, списък със стъпки и примерен код за изпълнение, показващ как да изтриете празна страница в Word с помощта на Python. Примерният код може да се използва такъв, какъвто е, за изпълнение на задачата, но можете да го импровизирате, като добавите различни условия, ако е необходимо.
Стъпки за изтриване на празна страница в Word с помощта на Python
- Настройте средата за разработка да използва Aspose.Words за Python чрез .NET за изтриване на празните страници
- Заредете изходния Word файл в обекта Document с празни страници в него
- Прегледайте всички страници в документа и проверете съдържанието на всеки раздел
- Проверете наличието на текст и изображения и изгответе списък с празни страници
- Създайте нов празен документ на Word
- Append всички страници с някакво съдържание от изходния Word файл, използвайки списъка с празни страници
- Запазете получения Word файл без празна страница
Тези стъпки обясняват процеса на как да премахнете празна страница на Word с помощта на Python. В този процес изходният файл на Word се зарежда и всички секции във всяка страница се проверяват за наличие на текст или изображения, за да се подготви списък с празни страници. В крайна сметка се създава нов документ и всички страници, различни от празните страници, се добавят към този нов празен документ.
Код за премахване на празна страница в Word с помощта на Python
import aspose.words as aw | |
import aspose.pydrawing as drawing | |
# Load the license | |
wordLic = aw.License() | |
wordLic.set_license("License.lic") | |
# Load the Word file having blank pages in it | |
originalDocWithFewBlankPages = aw.Document("input.docx") | |
# Declare an array for blank page numbers | |
listOfBlankPageNumbers = [] | |
listOfBlankPageNumbers.append(-1) | |
# Get total pages in the souce Word file | |
totalPagesInOriginalDoc = originalDocWithFewBlankPages.page_count | |
for iCount in range(0, totalPagesInOriginalDoc): # This will loop for page count | |
# Extract each page one by one | |
DocWithOnePage = originalDocWithFewBlankPages.extract_pages(iCount, 1) | |
shapesCounter = 0 | |
pageText = "" | |
# Check text and images in each section | |
for docSection in DocWithOnePage.sections: | |
docSection = docSection.as_section() | |
pageText = pageText + docSection.body.to_string(aw.SaveFormat.TEXT) | |
shapesCounter += docSection.body.get_child_nodes(aw.NodeType.SHAPE, True).count | |
# Check if no content is there | |
if (not pageText) and shapesCounter == 0: | |
# Store the index of blank page numbers | |
listOfBlankPageNumbers.append(iCount) | |
listOfBlankPageNumbers.append(totalPagesInOriginalDoc) | |
# Create a single page document with default forrmat | |
nonEmptyDocument = originalDocWithFewBlankPages.clone(False).as_document() | |
# Clean the document | |
nonEmptyDocument.remove_all_children() | |
# Append the pages with content to the new document | |
for iCount in range(1, len(listOfBlankPageNumbers)): | |
index = listOfBlankPageNumbers[iCount - 1] + 1 | |
count = listOfBlankPageNumbers[iCount] - index | |
if count > 0: | |
nonEmptyDocument.append_document( | |
originalDocWithFewBlankPages.extract_pages(index, count), | |
aw.ImportFormatMode.KEEP_SOURCE_FORMATTING) | |
# Save the document having some content in it | |
nonEmptyDocument.save("NonEmptyPages.docx") | |
print ("Blank pages deleted successfully") |
Този примерен код демонстрира как да изтриете празна страница от Word с помощта на Python. В този примерен код основният текст и типът на възела SHAPE са тествани за всяка секция, но можете да използвате други типове като TABLE, COMMENT, FORM_FIELD, SMART_TAG и др., за да идентифицирате празните страници. Методът append_document() се използва за добавяне на страници към новия файл на Word, докато съдържа различни претоварени методи, позволяващи различни аргументи за персонализиране на процеса на вмъкване на страници.
Тази статия ни научи как да премахваме празна страница в Word с помощта на Python. Ако искате да поставите номера на страници във файл на Word, вижте статията на как да поставите номер на страница в Word с помощта на Python.