У цій статті описано, як видалити порожню сторінку в 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.