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

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.

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.

Gambar output yang dihasilkan oleh kode sampel

Baca Komentar dari Dokumen Word

Berikut langkah-langkah untuk membaca komentar dari dokumen Word.

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.

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.

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.

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.

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.

Lihat juga