Limpar um documento
Às vezes, pode ser necessário remover informações não utilizadas ou duplicadas para reduzir o tamanho do documento de saída e o tempo de processamento.
Embora seja possível localizar e remover dados não utilizados, como estilos ou listas, ou duplicar informações manualmente, será muito mais conveniente fazer isso usando recursos e capacidades fornecidos por Aspose.Words.
A classe CleanupOptions permite especificar opções para limpeza de documentos. Para remover estilos duplicados ou apenas estilos ou listas não utilizados do documento, pode utilizar o método Cleanup.
Remover informações não utilizadas de um documento
Você pode usar as propriedades UnusedStyles e UnusedBuiltinStyles para detectar e remover estilos marcados como"não utilizados".
Você pode usar a propriedade UnusedLists para detectar e remover listas e definições de lista marcadas como"não utilizadas".
O exemplo de código a seguir mostra como remover apenas estilos não utilizados de um documento:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
Document doc = new Document(dataDir + "TestFile.doc"); | |
// Count of styles before Cleanup. | |
System.out.println(doc.getStyles().getCount()); | |
// Count of lists before Cleanup. | |
System.out.println(doc.getLists().getCount()); | |
CleanupOptions cleanupoptions = new CleanupOptions(); | |
cleanupoptions.setUnusedLists(false); | |
cleanupoptions.setUnusedStyles(true); | |
// Cleans unused styles and lists from the document depending on given | |
// CleanupOptions. | |
doc.cleanup(cleanupoptions); | |
// Count of styles after Cleanup was decreased. | |
System.out.println(doc.getStyles().getCount()); | |
// Count of lists after Cleanup is the same. | |
System.out.println(doc.getLists().getCount()); | |
doc.save(dataDir + "Document.Cleanup_out.docx"); |
Remover informações duplicadas de um documento
Você também pode usar a propriedade DuplicateStyle para substituir todos os estilos duplicados pelo Original e remover duplicatas de um documento.
O exemplo de código a seguir mostra como remover estilos duplicados de um documento:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
Document doc = new Document(dataDir + "Document.doc"); | |
// Count of styles before Cleanup. | |
System.out.println(doc.getStyles().getCount()); | |
CleanupOptions options = new CleanupOptions(); | |
options.setDuplicateStyle(true); | |
// Cleans duplicate styles from the document. | |
doc.cleanup(options); | |
// Count of styles after Cleanup was decreased. | |
System.out.println(doc.getStyles().getCount()); | |
doc.save(dataDir + "Document.CleanupDuplicateStyle_out.docx"); |