Limpiar un documento
En ocasiones, es posible que necesite eliminar información no utilizada o duplicada para reducir el tamaño del documento de salida y el tiempo de procesamiento.
Si bien puede buscar y eliminar datos no utilizados, como estilos o listas, o información duplicada manualmente, será mucho más conveniente hacerlo utilizando las funciones y capacidades proporcionadas por Aspose.Words.
La clase CleanupOptions le permite especificar opciones para la limpieza de documentos. Para eliminar estilos duplicados o simplemente estilos o listas no utilizados del documento, puede utilizar el método cleanup.
Eliminar información no utilizada de un documento
Puede utilizar las propiedades unused_styles y unused_builtin_styles para detectar y eliminar estilos marcados como “no utilizados”.
Puede utilizar la propiedad unused_lists para detectar y eliminar listas y definiciones de listas marcadas como “no utilizadas”.
El siguiente ejemplo de código muestra cómo eliminar solo los estilos no utilizados de un documento:
# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET | |
doc = aw.Document(docs_base.my_dir + "Unused styles.docx") | |
# Combined with the built-in styles, the document now has eight styles. | |
# A custom style is marked as "used" while there is any text within the document | |
# formatted in that style. This means that the 4 styles we added are currently unused. | |
print(f"Count of styles before Cleanup: {doc.styles.count}\n" + | |
f"Count of lists before Cleanup: {doc.lists.count}") | |
# Cleans unused styles and lists from the document depending on given CleanupOptions. | |
cleanupOptions = aw.CleanupOptions() | |
cleanupOptions.unused_lists = False | |
cleanupOptions.unused_styles = True | |
doc.cleanup(cleanupOptions) | |
print(f"Count of styles after Cleanup was decreased: {doc.styles.count}\n" + | |
f"Count of lists after Cleanup is the same: {doc.lists.count}") | |
doc.save(docs_base.artifacts_dir + "WorkingWithDocumentOptionsAndSettings.cleanup_unused_styles_and_lists.docx") |
Eliminar información duplicada de un documento
También puede utilizar la propiedad duplicate_style para sustituir todos los estilos duplicados por el original y eliminar duplicados de un documento.
El siguiente ejemplo de código muestra cómo eliminar estilos duplicados de un documento:
# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET | |
doc = aw.Document(docs_base.my_dir + "Document.docx") | |
# Count of styles before Cleanup. | |
print(doc.styles.count) | |
# Cleans duplicate styles from the document. | |
options = aw.CleanupOptions() | |
options.duplicate_style = True | |
doc.cleanup(options) | |
# Count of styles after Cleanup was decreased. | |
print(doc.styles.count) | |
doc.save(docs_base.artifacts_dir + "WorkingWithDocumentOptionsAndSettings.cleanup_duplicate_style.docx") |