Microsoft Word memberi Anda kemampuan untuk menambahkan komentar ke dokumen Word. Komentar dapat membantu dalam kasus seperti menyarankan perbaikan dalam dokumen atau berbagi pemikiran tentang teks. Mungkin ada situasi di mana Anda perlu mengelola komentar secara terprogram. Untuk itu, artikel ini akan mengajarkan Anda cara bekerja dengan komentar di dokumen Word menggunakan C++.
- C++ API untuk Bekerja dengan Komentar di Dokumen Word
- Tambahkan Komentar ke Dokumen Word menggunakan C++
- Baca Komentar dari Dokumen Word
- Ubah Komentar dalam Dokumen Word menggunakan C++
- Hapus Komentar dari Dokumen Word menggunakan C++
C++ API untuk Bekerja dengan Komentar di Dokumen Word
Aspose.Words for C++ adalah pustaka C++ asli yang memungkinkan Anda membuat, membaca, memodifikasi, dan mengonversi dokumen Microsoft Word. Selain itu, ini juga mendukung bekerja dengan komentar di file DOCX dan DOC. Anda dapat menginstal API melalui NuGet atau mengunduhnya langsung dari bagian Unduhan.
PM> Install-Package Aspose.Words.Cpp
Tambahkan Komentar ke Dokumen Word menggunakan C++
Aspose.Words for C++ API menyediakan kemampuan untuk menambahkan komentar dengan nama penulis, inisial, dan tanggal/waktu. Berikut ini adalah langkah-langkah untuk menambahkan komentar pada dokumen Word.
- Pertama, muat dokumen Word menggunakan kelas Document.
- Buat instance kelas DocumentBuilder dengan meneruskan objek Document yang dibuat pada langkah sebelumnya.
- Buat komentar menggunakan kelas Comment.
- Tambahkan komentar ke dokumen menggunakan DocumentBuilder->getCurrentParagraph()->AppendChild(System::SharedPtrAspose::Words::Node newChild) metode.
- Terakhir, simpan dokumen menggunakan metode Document->Save(System::String fileName).
Kode contoh berikut menunjukkan cara menambahkan komentar ke dokumen Word menggunakan C++.
// Jalur direktori.
System::String sourceDataDir = u"SourceDirectory\\";
System::String outputDataDir = u"OutputDirectory\\";
// Muat file Word
System::SharedPtr<Document> doc = System::MakeObject<Document>(sourceDataDir + u"Sample 1.docx");
// Buat instance dari kelas DocumentBuilder
System::SharedPtr<DocumentBuilder> builder = System::MakeObject<DocumentBuilder>(doc);
// Tambahkan komentar
System::SharedPtr<Comment> comment = System::MakeObject<Comment>(doc, u"Aspose", u"AFFA", System::DateTime::get_Today());
builder->get_CurrentParagraph()->AppendChild(comment);
comment->get_Paragraphs()->Add(System::MakeObject<Paragraph>(doc));
comment->get_FirstParagraph()->get_Runs()->Add(System::MakeObject<Run>(doc, u"Comment text."));
// Simpan dokumen.
doc->Save(outputDataDir + u"AddCommentsToExistingDoc.docx");
Berikut ini adalah gambar output yang dihasilkan oleh kode sampel.
Baca Komentar dari Dokumen Word
Berikut langkah-langkah untuk membaca komentar dari dokumen Word.
- Muat dokumen Word menggunakan kelas Document.
- Ambil komentar menggunakan metode Document->GetChildNodes(Aspose::Words::NodeType nodeType, bool isDeep).
- Ulangi melalui komentar dan ambil informasi dari masing-masing komentar.
Berikut ini adalah contoh kode untuk membaca komentar dari dokumen Word menggunakan C++.
// Jalur direktori.
System::String sourceDataDir = u"SourceDirectory\\";
System::String outputDataDir = u"OutputDirectory\\";
// Muat file Word
System::SharedPtr<Document> doc = System::MakeObject<Document>(sourceDataDir + u"SampleComments.docx");
// Ambil komentar
System::SharedPtr<NodeCollection> comments = doc->GetChildNodes(NodeType::Comment, true);
// Ulangi semua komentar
for (System::SharedPtr<Comment> comment : System::IterateOver<System::SharedPtr<Comment>>(comments))
{
// Cetak informasi komentar
std::cout << comment->get_Author() + u" " + comment->get_DateTime() + u" " + System::StaticCast<Node>(comment)->ToString(SaveFormat::Text);
}
Ubah Komentar dalam Dokumen Word menggunakan C++
Untuk memodifikasi komentar, ambil dengan menggunakan metode NodeCollection->idxget(int32t index) dan ubah sesuai kebutuhan Anda. Berikut ini adalah langkah-langkah untuk mengubah komentar dalam dokumen Word.
- Pertama, muat dokumen Word menggunakan kelas Document.
- Ambil komentar menggunakan metode Document->GetChildNodes(Aspose::Words::NodeType nodeType, bool isDeep).
- Dapatkan komentar yang diinginkan menggunakan metode NodeCollection->idxget(int32t index) dan kirimkan hasilnya ke Comment.
- Perbarui komentar.
- Terakhir, simpan dokumen menggunakan metode Document->Save(System::String fileName).
Kode contoh berikut menunjukkan cara mengubah komentar dalam dokumen Word menggunakan C++.
// Jalur direktori.
System::String sourceDataDir = u"SourceDirectory\\";
System::String outputDataDir = u"OutputDirectory\\";
// Muat file Word
System::SharedPtr<Document> doc = System::MakeObject<Document>(sourceDataDir + u"SampleComments.docx");
// Ambil komentar
System::SharedPtr<NodeCollection> comments = doc->GetChildNodes(NodeType::Comment, true);
// Dapatkan komentar
System::SharedPtr<Comment> comment = System::DynamicCast<Comment>(comments->idx_get(0));
// Perbarui teks komentar
comment->SetText(u"Updated Text");
// Simpan dokumen.
doc->Save(outputDataDir + u"UpdatedComment.docx");
Hapus Komentar dari Dokumen Word menggunakan C++
Aspose.Words for C++ API menyediakan banyak cara untuk menghapus komentar dari dokumen Word. Di bagian ini, Anda akan mempelajari cara menghapus komentar tertentu, komentar oleh penulis, dan semua komentar menggunakan C++.
Hapus Komentar Tertentu
Berikut ini adalah langkah-langkah untuk menghapus komentar tertentu.
- Muat dokumen Word menggunakan kelas Document.
- Ambil komentar menggunakan metode Document->GetChildNodes(Aspose::Words::NodeType nodeType, bool isDeep).
- Dapatkan komentar yang ingin Anda hapus menggunakan metode NodeCollection->idxget(int32t index) dan kirimkan hasilnya ke Comment.
- Hapus komentar menggunakan metode Comment->Remove().
- Simpan dokumen menggunakan metode Document->Save(System::String fileName).
Kode contoh berikut menunjukkan cara menghapus komentar tertentu dari dokumen Word menggunakan C++.
// Jalur direktori.
System::String sourceDataDir = u"D:\\Work\\Aspose\\01_SourceDirectory\\";
System::String outputDataDir = u"D:\\Work\\Aspose\\02_OutputDirectory\\";
// Muat file Word
System::SharedPtr<Document> doc = System::MakeObject<Document>(sourceDataDir + u"SampleComments.docx");
// Ambil komentar
System::SharedPtr<NodeCollection> comments = doc->GetChildNodes(NodeType::Comment, true);
// Dapatkan komentar
System::SharedPtr<Comment> comment = System::DynamicCast<Comment>(comments->idx_get(2));
// Hapus komentar
comment->Remove();
// Simpan dokumen.
doc->Save(outputDataDir + u"DeleteSpecificComments.docx");
Menghapus Komentar oleh Penulis
Berikut ini adalah langkah-langkah untuk menghapus komentar oleh penulis.
- Pertama, muat dokumen Word menggunakan kelas Document.
- Ambil komentar menggunakan metode Document->GetChildNodes(Aspose::Words::NodeType nodeType, bool isDeep).
- Ulangi komentar.
- Di dalam loop, ambil komentar dan bandingkan pembuatnya. Jika penulis cocok, hapus komentar.
- Terakhir, simpan dokumen menggunakan metode Document->Save(System::String fileName).
Berikut ini adalah contoh kode untuk menghapus komentar oleh penulis menggunakan C++.
// Jalur direktori.
System::String sourceDataDir = u"SourceDirectory\\";
System::String outputDataDir = u"OutputDirectory\\";
// Muat file Word
System::SharedPtr<Document> doc = System::MakeObject<Document>(sourceDataDir + u"SampleComments.docx");
// Ambil komentar
System::SharedPtr<NodeCollection> comments = doc->GetChildNodes(NodeType::Comment, true);
// Ulangi semua komentar dan hapus yang ditulis oleh penulis "Aspose".
for (int32_t i = comments->get_Count() - 1; i >= 0; i--)
{
System::SharedPtr<Comment> comment = System::DynamicCast<Comment>(comments->idx_get(i));
if (comment->get_Author() == u"Aspose")
{
comment->Remove();
}
}
// Simpan dokumen.
doc->Save(outputDataDir + u"DeleteCommentsByAuthor.docx");
Hapus Semua Komentar
Daripada menghapus komentar satu per satu, Anda dapat menghapus semua komentar sekaligus menggunakan metode NodeCollection->Clear(). Berikut ini adalah langkah-langkah untuk menghapus semua komentar dari dokumen Word.
- Muat dokumen Word menggunakan kelas Document.
- Ambil komentar menggunakan metode Document->GetChildNodes(Aspose::Words::NodeType nodeType, bool isDeep).
- Hapus semua komentar menggunakan metode NodeCollection->Clear().
- Terakhir, simpan dokumen menggunakan metode Document->Save(System::String fileName).
Kode contoh berikut menunjukkan cara menghapus semua komentar dari dokumen Word menggunakan C++.
// Jalur direktori.
System::String sourceDataDir = u"SourceDirectory\\";
System::String outputDataDir = u"OutputDirectory\\";
// Muat file Word
System::SharedPtr<Document> doc = System::MakeObject<Document>(sourceDataDir + u"SampleComments.docx");
// Ambil komentar
System::SharedPtr<NodeCollection> comments = doc->GetChildNodes(NodeType::Comment, true);
// Hapus semua komentar.
comments->Clear();
// Simpan dokumen.
doc->Save(outputDataDir + u"DeleteAllComments.docx");
Dapatkan Lisensi Gratis
Anda dapat mencoba API tanpa batasan evaluasi dengan meminta lisensi sementara gratis.
Kesimpulan
Pada artikel ini, Anda telah mempelajari cara bekerja dengan komentar di dokumen Word menggunakan C++. Secara khusus, Anda telah mempelajari cara menambahkan, membaca, mengedit, dan menghapus komentar. Selanjutnya, Anda telah melihat cara menghapus komentar tertentu, komentar oleh penulis, dan semua komentar menggunakan Aspose.Words for C++ API. API menyediakan sejumlah besar fitur tambahan untuk mengotomatiskan tugas terkait Word Anda. Anda dapat menjelajahi API secara mendetail dengan mengunjungi dokumentasi resmi. Jika ada pertanyaan, jangan ragu untuk menghubungi kami di forum dukungan gratis.