C# FInd واستبدال النص في PowerPoint

غالبًا ما يتم استخدام البحث عن النص واستبداله لتحديث المحتوى في عروض PowerPoint التقديمية. ومع ذلك ، من أجل إجراء هذه العملية لمجموعة من العروض التقديمية ، فإنك تحتاج إلى أتمتة. وفقًا لذلك ، تتناول هذه المقالة كيفية البحث عن نص واستبداله في PowerPoint PPTX / PPT برمجيًا باستخدام C#.

C# API للبحث عن النص واستبداله في PowerPoint

من أجل البحث عن النص واستبداله في عروض PowerPoint التقديمية ، سنستخدم Aspose.Slides for .NET. إنها واجهة برمجة تطبيقات غنية بالميزات تم تصميمها لإنشاء عروض PowerPoint التقديمية ومعالجتها من داخل تطبيقات .NET. يمكنك إما تنزيل API أو تثبيته باستخدام NuGet.

PM> Install-Package Aspose.Slides.NET

البحث عن نص واستبداله في PowerPoint PPTX باستخدام C#

فيما يلي خطوات البحث عن نص واستبداله في عرض PPTX باستخدام C#.

  • قم بتحميل عرض PowerPoint التقديمي باستخدام فئة Presentation.
  • تكرار كل شريحة في العرض التقديمي.
  • في كل تكرار ، احصل على إطارات نصية في مصفوفة ITextFrame.
  • حلقة من خلال مصفوفة ITextFrame وفي كل تكرار ، نفذ العمليات التالية:
    • قم بالتكرار خلال ParagraphCollection في كل إطار نصي.
    • الوصول إلى PortionCollection في كل فقرة.
    • تحقق مما إذا كان Portion.Text يحتوي على سلسلة البحث.
    • إذا كانت الإجابة بنعم ، فابحث عن موضع سلسلة البحث واستبدلها بتعيين خاصية Portion.Text.
  • احفظ العرض التقديمي المحدث باستخدام طريقة Presentation.Save (string، SaveFormat).

يُظهر نموذج التعليمات البرمجية التالي كيفية البحث عن النص واستبداله في عرض PowerPoint تقديمي.

// تحميل العرض
Presentation pres = new Presentation("mytextone.pptx");

string strToFind = "search string";
string strToReplaceWith = "replace string";

// حلقة من خلال كل شريحة
foreach (Slide slide in pres.Slides)
{
    // احصل على جميع إطارات النص في الشريحة
    ITextFrame[] tf = SlideUtil.GetAllTextBoxes(slide);

   for (int i = 0; i < tf.Length; i++)

        foreach (Paragraph para in tf[i].Paragraphs)

            foreach (Portion port in para.Portions)

                // ابحث عن النص ليتم استبداله
                if (port.Text.Contains(strToFind))
                {
                    // استبدل النص الحالي بالنص الجديد
                    string str = port.Text;
                    int idx = str.IndexOf(strToFind);
                    string strStartText = str.Substring(0, idx);
                    string strEndText = str.Substring(idx + strToFind.Length, str.Length - 1 - (idx + strToFind.Length - 1));
                    port.Text = strStartText + strToReplaceWith + strEndText;

                }
}

// احفظ العرض التقديمي
pres.Save("myTextOneAspose.pptx", SaveFormat.Pptx);

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

يمكنك استخدام Aspose.Slides for .NET بدون قيود تقييمية عن طريق طلب ترخيص مؤقت.

استنتاج

تُستخدم ميزة البحث عن النص واستبداله في عروض PowerPoint التقديمية في سيناريوهات مختلفة. من أجل أتمتة هذه العملية ، تناولت المقالة كيفية البحث عن نص واستبداله في عروض PowerPoint التقديمية برمجيًا باستخدام C#. يمكنك ببساطة تثبيت API في تطبيقك ودمج نموذج التعليمات البرمجية المقدم. بالإضافة إلى ذلك ، يمكنك زيارة التوثيق لاستكشاف الميزات الأخرى لـ Aspose.Slides for .NET. أيضًا ، لا تتردد في إخبارنا باستفساراتك عبر المنتدى.

أنظر أيضا