يوفر لك Microsoft Word القدرة على إضافة تعليقات إلى مستندات Word. يمكن أن تكون التعليقات مفيدة في حالات مثل اقتراح تحسينات في المستندات أو مشاركة الأفكار حول النص. قد تكون هناك مواقف تحتاج فيها إلى إدارة التعليقات برمجيًا. تحقيقًا لهذه الغاية ، ستعلمك هذه المقالة كيفية التعامل مع التعليقات في مستندات Word باستخدام C ++.

واجهة برمجة تطبيقات C ++ للعمل مع التعليقات في مستندات Word

Aspose.Words for C ++ هي مكتبة C ++ أصلية تتيح لك إنشاء مستندات Microsoft Word وقراءتها وتعديلها وتحويلها. بالإضافة إلى ذلك ، فإنه يدعم أيضًا التعامل مع التعليقات في ملفات DOCX و DOC. يمكنك إما تثبيت API من خلال NuGet أو تنزيلها مباشرة من قسم التنزيلات.

PM> Install-Package Aspose.Words.Cpp

أضف تعليقات إلى مستندات Word باستخدام C ++

يوفر Aspose.Words for C ++ API القدرة على إضافة تعليقات مع اسم المؤلف والأحرف الأولى والتاريخ / الوقت. فيما يلي خطوات إضافة تعليقات إلى مستندات Word.

يوضح نموذج التعليمات البرمجية التالي كيفية إضافة تعليقات إلى مستندات Word باستخدام C ++.

// مسارات الدليل.
System::String sourceDataDir = u"SourceDirectory\\";
System::String outputDataDir = u"OutputDirectory\\";

// قم بتحميل ملف Word
System::SharedPtr<Document> doc = System::MakeObject<Document>(sourceDataDir + u"Sample 1.docx");

// قم بإنشاء مثيل لفئة DocumentBuilder
System::SharedPtr<DocumentBuilder> builder = System::MakeObject<DocumentBuilder>(doc);

// أضف تعليق
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."));

// احفظ المستند.
doc->Save(outputDataDir + u"AddCommentsToExistingDoc.docx");

فيما يلي صورة الإخراج التي تم إنشاؤها بواسطة نموذج التعليمات البرمجية.

صورة الإخراج التي تم إنشاؤها بواسطة نموذج التعليمات البرمجية

قراءة التعليقات من مستند Word

فيما يلي خطوات قراءة التعليقات من مستندات Word.

ما يلي هو نموذج التعليمات البرمجية لقراءة التعليقات من مستند Word باستخدام C ++.

// مسارات الدليل.
System::String sourceDataDir = u"SourceDirectory\\";
System::String outputDataDir = u"OutputDirectory\\";

// قم بتحميل ملف Word
System::SharedPtr<Document> doc = System::MakeObject<Document>(sourceDataDir + u"SampleComments.docx");

// استرجاع التعليقات
System::SharedPtr<NodeCollection> comments = doc->GetChildNodes(NodeType::Comment, true);

// حلقة من خلال جميع التعليقات
for (System::SharedPtr<Comment> comment : System::IterateOver<System::SharedPtr<Comment>>(comments))
{
	// طباعة معلومات التعليق
	std::cout << comment->get_Author() + u" " + comment->get_DateTime() + u" " + System::StaticCast<Node>(comment)->ToString(SaveFormat::Text);
}

تعديل التعليقات في مستند Word باستخدام C ++

لتعديل تعليق ، استرجعه باستخدام طريقة NodeCollection-> idxget (int32t index) وقم بتغييره وفقًا لاحتياجاتك. فيما يلي خطوات تعديل التعليقات في مستند Word.

يُظهر نموذج التعليمات البرمجية التالي كيفية تعديل التعليقات في مستند Word باستخدام C ++.

// مسارات الدليل.
System::String sourceDataDir = u"SourceDirectory\\";
System::String outputDataDir = u"OutputDirectory\\";

// قم بتحميل ملف Word
System::SharedPtr<Document> doc = System::MakeObject<Document>(sourceDataDir + u"SampleComments.docx");

// استرجاع التعليقات
System::SharedPtr<NodeCollection> comments = doc->GetChildNodes(NodeType::Comment, true);

// احصل على تعليق
System::SharedPtr<Comment> comment = System::DynamicCast<Comment>(comments->idx_get(0));

// تحديث نص التعليق
comment->SetText(u"Updated Text");

// احفظ المستند.
doc->Save(outputDataDir + u"UpdatedComment.docx");

حذف التعليقات من مستند Word باستخدام C ++

يوفر Aspose.Words for C ++ API طرقًا متعددة لحذف التعليقات من مستندات Word. في هذا القسم ، ستتعلم كيفية حذف تعليق معين وتعليقات المؤلف وجميع التعليقات باستخدام C ++.

حذف تعليق محدد

فيما يلي خطوات حذف تعليق معين.

يُظهر نموذج التعليمات البرمجية التالي كيفية حذف تعليق معين من مستند Word باستخدام C ++.

// مسارات الدليل.
System::String sourceDataDir = u"D:\\Work\\Aspose\\01_SourceDirectory\\";
System::String outputDataDir = u"D:\\Work\\Aspose\\02_OutputDirectory\\";

// قم بتحميل ملف Word
System::SharedPtr<Document> doc = System::MakeObject<Document>(sourceDataDir + u"SampleComments.docx");

// استرجاع التعليقات
System::SharedPtr<NodeCollection> comments = doc->GetChildNodes(NodeType::Comment, true);

// احصل على تعليق
System::SharedPtr<Comment> comment = System::DynamicCast<Comment>(comments->idx_get(2));

// إزالة التعليق
comment->Remove();

// احفظ المستند.
doc->Save(outputDataDir + u"DeleteSpecificComments.docx");

حذف تعليقات المؤلف

فيما يلي خطوات حذف التعليقات من قبل المؤلف.

فيما يلي نموذج التعليمات البرمجية لحذف التعليقات بواسطة المؤلف باستخدام C ++.

// مسارات الدليل.
System::String sourceDataDir = u"SourceDirectory\\";
System::String outputDataDir = u"OutputDirectory\\";

// قم بتحميل ملف Word
System::SharedPtr<Document> doc = System::MakeObject<Document>(sourceDataDir + u"SampleComments.docx");

// استرجاع التعليقات
System::SharedPtr<NodeCollection> comments = doc->GetChildNodes(NodeType::Comment, true);

// قم بتكرار جميع التعليقات وقم بإزالة تلك التي كتبها مؤلف "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();
	}
}

// احفظ المستند.
doc->Save(outputDataDir + u"DeleteCommentsByAuthor.docx");

حذف كافة التعليقات

بدلاً من حذف التعليقات الفردية ، يمكنك حذف جميع التعليقات مرة واحدة باستخدام طريقة NodeCollection-> Clear(). فيما يلي خطوات حذف جميع التعليقات من مستند Word.

يوضح نموذج التعليمات البرمجية التالي كيفية حذف كافة التعليقات من مستند Word باستخدام C ++.

// مسارات الدليل.
System::String sourceDataDir = u"SourceDirectory\\";
System::String outputDataDir = u"OutputDirectory\\";

// قم بتحميل ملف Word
System::SharedPtr<Document> doc = System::MakeObject<Document>(sourceDataDir + u"SampleComments.docx");

// استرجاع التعليقات
System::SharedPtr<NodeCollection> comments = doc->GetChildNodes(NodeType::Comment, true);

// إزالة كافة التعليقات.
comments->Clear();

// احفظ المستند.
doc->Save(outputDataDir + u"DeleteAllComments.docx");

احصل على رخصة مجانية

يمكنك تجربة واجهة برمجة التطبيقات بدون قيود التقييم من خلال طلب ترخيص مؤقت مجاني.

استنتاج

في هذه المقالة ، تعلمت كيفية التعامل مع التعليقات في مستندات Word باستخدام C ++. على وجه التحديد ، لقد تعلمت كيفية إضافة التعليقات وقراءتها وتحريرها وحذفها. علاوة على ذلك ، لقد رأيت كيفية حذف تعليق معين وتعليقات المؤلف وجميع التعليقات باستخدام Aspose.Words for C ++ API. توفر واجهة برمجة التطبيقات عددًا كبيرًا من الميزات الإضافية لأتمتة المهام المتعلقة بـ Word. يمكنك استكشاف API بالتفصيل من خلال زيارة الوثائق الرسمية. في حالة وجود أي أسئلة ، لا تتردد في الاتصال بنا على منتدى الدعم المجاني.

أنظر أيضا