یافتن و جایگزینی متن اغلب برای به روز رسانی محتوا در ارائه های پاورپوینت استفاده می شود. با این حال، برای انجام این عملیات برای دسته ای از ارائه ها، به اتوماسیون نیاز دارید. بر این اساس، این مقاله نحوه یافتن و جایگزینی متن در پاورپوینت PPTX/PPT را به صورت برنامهنویسی با استفاده از سی شارپ شرح میدهد.
C# API برای یافتن و جایگزینی متن در پاورپوینت
برای یافتن و جایگزینی متن در ارائههای پاورپوینت، از Aspose.Slides for .NET استفاده میکنیم. این یک API غنی از ویژگی ها است که برای ایجاد و دستکاری ارائه های پاورپوینت از داخل برنامه های NET طراحی شده است. می توانید API را دانلود یا با استفاده از NuGet نصب کنید.
PM> Install-Package Aspose.Slides.NET
یافتن و جایگزینی متن در پاورپوینت PPTX با استفاده از سی شارپ
مراحل زیر برای یافتن و جایگزینی متن در یک ارائه PPTX با استفاده از C# است.
- ارائه پاورپوینت را با استفاده از کلاس Presentation بارگیری کنید.
- از طریق هر اسلاید در ارائه حلقه بزنید.
- در هر تکرار، فریم های متنی را در آرایه ITextFrame دریافت کنید.
- از طریق آرایه ITextFrame حلقه بزنید و در هر تکرار، عملیات زیر را انجام دهید:
- حلقه ParagraphCollection را در هر قاب متنی مرور کنید.
- به PortionCollection در هر Paragraph دسترسی داشته باشید.
- بررسی کنید که آیا Portion.Text دارای رشته جستجو است یا خیر.
- اگر بله، موقعیت رشته جستجو را پیدا کنید و با تنظیم ویژگی Portion.Text جایگزین کنید.
- ارائه به روز شده را با استفاده از روش Presentation.Save(string, SaveFormat) ذخیره کنید.
نمونه کد زیر نحوه یافتن و جایگزینی متن در ارائه پاورپوینت را نشان می دهد.
// بارگذاری ارائه
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 برای NET بدون محدودیت ارزیابی استفاده کنید.
نتیجه
قابلیت یافتن و جایگزینی متن در ارائه های پاورپوینت در سناریوهای مختلفی مورد استفاده قرار می گیرد. به منظور خودکارسازی این عملیات، این مقاله به نحوه یافتن و جایگزینی متن در ارائههای پاورپوینت به صورت برنامهنویسی با استفاده از C# پرداخت. شما به سادگی می توانید API را در برنامه خود نصب کنید و نمونه کد ارائه شده را ادغام کنید. علاوه بر این، میتوانید برای بررسی سایر ویژگیهای Aspose.Slides برای داتنت از مستندات دیدن کنید. همچنین، میتوانید از طریق [فروم 15 ما در مورد سؤالات خود به ما اطلاع دهید.