عرض العروض التقديمية باستخدام خطوط احتياطية في .NET

Contents
[ ]

تتضمن المثال التالي هذه الخطوات:

  1. نقوم بـإنشاء مجموعة قواعد خطوط الاحتياطي.
  2. Remove() قاعدة خطوط احتياطي وAddFallBackFonts() إلى قاعدة أخرى.
  3. قم بتعيين مجموعة القواعد إلى خاصية FontsManager.FontFallBackRulesCollection.
  4. باستخدام طريقة Presentation.Save() يمكننا حفظ العرض التقديمي بنفس التنسيق، أو حفظه بتنسيق آخر. بعد تعيين مجموعة قواعد خطوط الاحتياطي إلى FontsManager، تُطبق هذه القواعد أثناء أي عمليات على العرض التقديمي: حفظ، عرض، تحويل، إلخ.
// إنشاء مثيل جديد لمجموعة القواعد
IFontFallBackRulesCollection rulesList = new FontFallBackRulesCollection();

// إنشاء عدد من القواعد
rulesList.Add(new FontFallBackRule(0x400, 0x4FF, "Times New Roman"));
//rulesList.Add(new FontFallBackRule(...));

foreach (IFontFallBackRule fallBackRule in rulesList)
{
	// محاولة إزالة خط FallBack "Tahoma" من القواعد المحملة
	fallBackRule.Remove("Tahoma");

	// وتحديث القواعد للنطاق المحدد
	if ((fallBackRule.RangeEndIndex >= 0x4000) && (fallBackRule.RangeStartIndex < 0x5000))
		fallBackRule.AddFallBackFonts("Verdana");
}

// يمكننا أيضًا إزالة أي قواعد موجودة من القائمة
if (rulesList.Count > 0)
	rulesList.Remove(rulesList[0]);

using (Presentation pres = new Presentation("input.pptx"))
{
    // تعيين قائمة القواعد المعدة للاستخدام
    pres.FontsManager.FontFallBackRulesCollection = rulesList;

    // إنشاء صورة مصغرة باستخدام مجموعة القواعد المُهيأة وحفظها كملف PNG
    using (IImage image = pres.Slides[0].GetImage(1f, 1f))
    {
        image.Save("Slide_0.png", ImageFormat.Png);
    }
}