Bersihkan Dokumen
Terkadang Anda mungkin perlu menghapus informasi yang tidak digunakan atau duplikat untuk mengurangi ukuran dokumen keluaran dan waktu pemrosesan.
Meskipun Anda dapat menemukan dan menghapus data yang tidak digunakan, seperti gaya atau daftar, atau menggandakan informasi secara manual, akan jauh lebih mudah untuk melakukannya menggunakan fitur dan kemampuan yang disediakan oleh Aspose.Words.
Kelas CleanupOptions memungkinkan Anda menentukan opsi untuk pembersihan dokumen. Untuk menghapus gaya duplikat atau hanya gaya atau daftar yang tidak digunakan dari dokumen, Anda dapat menggunakan metode Cleanup.
Menghapus Informasi yang Tidak Digunakan dari Dokumen
Anda dapat menggunakan properti UnusedStyles dan UnusedBuiltinStyles untuk mendeteksi dan menghapus gaya yang ditandai sebagai “tidak digunakan”.
Anda dapat menggunakan properti UnusedLists untuk mendeteksi dan menghapus daftar dan definisi daftar yang ditandai sebagai “tidak digunakan”.
Contoh kode berikut menunjukkan cara menghapus hanya gaya yang tidak digunakan dari dokumen:
For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C | |
auto doc = MakeObject<Document>(MyDir + u"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. | |
std::cout << (String::Format(u"Count of styles before Cleanup: {0}\n", doc->get_Styles()->get_Count()) + | |
String::Format(u"Count of lists before Cleanup: {0}", doc->get_Lists()->get_Count())) | |
<< std::endl; | |
// Cleans unused styles and lists from the document depending on given CleanupOptions. | |
auto cleanupOptions = MakeObject<CleanupOptions>(); | |
cleanupOptions->set_UnusedLists(false); | |
cleanupOptions->set_UnusedStyles(true); | |
doc->Cleanup(cleanupOptions); | |
std::cout << (String::Format(u"Count of styles after Cleanup was decreased: {0}\n", doc->get_Styles()->get_Count()) + | |
String::Format(u"Count of lists after Cleanup is the same: {0}", doc->get_Lists()->get_Count())) | |
<< std::endl; | |
doc->Save(ArtifactsDir + u"WorkingWithDocumentOptionsAndSettings.CleanupUnusedStylesAndLists.docx"); |
Menghapus Informasi Duplikat dari Dokumen
Anda juga dapat menggunakan properti DuplicateStyle untuk mengganti semua gaya duplikat dengan yang asli dan menghapus duplikat dari dokumen.
Contoh kode berikut menunjukkan cara menghapus gaya duplikat dari dokumen:
For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C | |
auto doc = MakeObject<Document>(MyDir + u"Document.docx"); | |
// Count of styles before Cleanup. | |
std::cout << doc->get_Styles()->get_Count() << std::endl; | |
// Cleans duplicate styles from the document. | |
auto options = MakeObject<CleanupOptions>(); | |
options->set_DuplicateStyle(true); | |
doc->Cleanup(options); | |
// Count of styles after Cleanup was decreased. | |
std::cout << doc->get_Styles()->get_Count() << std::endl; | |
doc->Save(ArtifactsDir + u"WorkingWithDocumentOptionsAndSettings.CleanupDuplicateStyle.docx"); |