إظهار إخفاء المحتوى ذي الإشارة المرجعية في مستند Word

مقدمة

هل أنت مستعد للتعمق في عالم معالجة المستندات باستخدام Aspose.Words لـ .NET؟ سواء كنت مطورًا يتطلع إلى أتمتة مهام المستندات أو مجرد شخص مهتم بالتعامل مع ملفات Word برمجيًا، فأنت في المكان الصحيح. سنستكشف اليوم كيفية إظهار وإخفاء المحتوى الذي تم وضع إشارة مرجعية عليه في مستند Word باستخدام Aspose.Words for .NET. سيجعلك هذا الدليل التفصيلي محترفًا في التحكم في رؤية المحتوى استنادًا إلى الإشارات المرجعية. هيا بنا نبدأ!

المتطلبات الأساسية

قبل أن ننتقل إلى التفاصيل الجوهرية، هناك بعض الأشياء التي ستحتاج إليها:

  1. Visual Studio: أي إصدار متوافق مع .NET.
  2. Aspose.Words لـ .NET: قم بتنزيلههنا.
  3. الفهم الأساسي لـ C#: إذا كان بإمكانك كتابة برنامج “Hello World” بسيط، فأنت جاهز للبدء.
  4. مستند Word مع الإشارات المرجعية: سنستخدم نموذج مستند يحتوي على إشارات مرجعية لهذا البرنامج التعليمي.

استيراد مساحات الأسماء

أول الأشياء أولاً، فلنستورد مساحات الأسماء الضرورية. وهذا يضمن أن لدينا جميع الأدوات التي نحتاجها لمهمتنا.

using System;
using Aspose.Words;
using Aspose.Words.Bookmark;

مع وجود مساحات الأسماء هذه في مكانها الصحيح، نحن جاهزون لبدء رحلتنا.

الخطوة 1: إعداد مشروعك

حسنًا، لنبدأ الأمور بإعداد مشروعنا في Visual Studio.

إنشاء مشروع جديد

افتح Visual Studio وقم بإنشاء مشروع Console App (.NET Core) جديد. أطلق عليها اسمًا جذابًا، مثل “BookmarkVisibilityManager”.

إضافة Aspose.Words لـ .NET

ستحتاج إلى إضافة Aspose.Words for .NET إلى مشروعك. يمكنك القيام بذلك عبر NuGet Package Manager.

  1. انتقل إلى الأدوات > مدير حزم NuGet > إدارة حزم NuGet للحل.
  2. ابحث عن “Aspose.Words”.
  3. قم بتثبيت الحزمة.

عظيم! الآن بعد أن تم إعداد مشروعنا، دعنا ننتقل إلى تحميل وثيقتنا.

الخطوة 2: تحميل المستند

نحتاج إلى تحميل مستند Word الذي يحتوي على الإشارات المرجعية. في هذا البرنامج التعليمي، سنستخدم نموذج مستند باسم “Bookmarks.docx”.

// المسار إلى دليل المستندات.
string dataDir = "YOUR DOCUMENT DIRECTORY";
Document doc = new Document(dataDir + "Bookmarks.docx");

يقوم مقتطف الكود هذا بتعيين المسار إلى دليل المستند الخاص بك ويقوم بتحميل المستند في ملفdoc هدف.

الخطوة 3: إظهار/إخفاء المحتوى الذي تم وضع إشارة مرجعية عليه

الآن يأتي الجزء الممتع – إظهار المحتوى أو إخفائه بناءً على الإشارات المرجعية. سنقوم بإنشاء طريقة تسمىShowHideBookmarkedContent للتعامل مع هذا.

إليك الطريقة التي ستقوم بتبديل رؤية المحتوى الذي تم وضع إشارة مرجعية عليه:

public void ShowHideBookmarkedContent(Document doc, string bookmarkName, bool isHidden)
{
    Bookmark bm = doc.Range.Bookmarks[bookmarkName];

    Node currentNode = bm.BookmarkStart;
    while (currentNode != null && currentNode.NodeType != NodeType.BookmarkEnd)
    {
        if (currentNode.NodeType == NodeType.Run)
        {
            Run run = currentNode as Run;
            run.Font.Hidden = isHidden;
        }
        currentNode = currentNode.NextSibling;
    }
}

انهيار الطريقة

  • استرجاع الإشارة المرجعية:Bookmark bm = doc.Range.Bookmarks[bookmarkName]; جلب الإشارة المرجعية.
  • اجتياز العقدة: نقوم باجتياز العقد داخل الإشارة المرجعية.
  • تبديل الرؤية: إذا كانت العقدة أRun (سلسلة متجاورة من النص)، قمنا بتعيينهاHidden ملكية.

الخطوة 4: تطبيق الطريقة

بعد تطبيق طريقتنا، فلنطبقها لإظهار المحتوى أو إخفائه بناءً على إشارة مرجعية.

ShowHideBookmarkedContent(doc, "MyBookmark1", true);

سيخفي سطر التعليمات البرمجية هذا المحتوى الموجود داخل الإشارة المرجعية المسماة “MyBookmark1”.

الخطوة 5: حفظ المستند

وأخيرا، دعونا نحفظ المستند المعدل.

doc.Save(dataDir + "WorkingWithBookmarks.ShowHideBookmarks.docx");

يؤدي هذا إلى حفظ المستند بالتغييرات التي أجريناها.

خاتمة

وهناك لديك! لقد تعلمت للتو كيفية إظهار وإخفاء المحتوى الذي تم وضع إشارة مرجعية عليه في مستند Word باستخدام Aspose.Words for .NET. تجعل هذه الأداة القوية معالجة المستندات أمرًا سهلاً، سواء كنت تقوم بأتمتة التقارير، أو إنشاء قوالب، أو مجرد تعديل ملفات Word. ترميز سعيد!

الأسئلة الشائعة

هل يمكنني تبديل إشارات مرجعية متعددة في وقت واحد؟

نعم يمكنك الاتصال بالرقمShowHideBookmarkedContent طريقة لكل إشارة مرجعية تريد تبديلها.

هل يؤثر إخفاء المحتوى على بنية المستند؟

لا، إخفاء المحتوى يؤثر فقط على ظهوره. يبقى المحتوى في المستند.

هل يمكنني استخدام هذه الطريقة لأنواع أخرى من المحتوى؟

تعمل هذه الطريقة على تبديل تشغيل النص على وجه التحديد. بالنسبة لأنواع المحتوى الأخرى، ستحتاج إلى تعديل منطق اجتياز العقدة.

هل Aspose.Words لـ .NET مجاني؟

يقدم Aspose.Words نسخة تجريبية مجانيةهنا ، ولكن يلزم الحصول على ترخيص كامل لاستخدام الإنتاج. يمكنك شرائههنا.

كيف يمكنني الحصول على الدعم إذا واجهت مشاكل؟

يمكنك الحصول على الدعم من مجتمع Asposeهنا.