عرض العروض التقديمية باستخدام خطوط احتياطية في .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);
    }
}