خط مخصص في C++
يسمح لك Aspose Slides بتحميل هذه الخطوط باستخدام FontsLoader::LoadExternalFonts:
تحميل خطوط مخصصة
يسمح لك Aspose.Slides بتحميل خطوط يتم عرضها في العروض التقديمية دون الحاجة إلى تثبيت تلك الخطوط. يتم تحميل الخطوط من دليل مخصص.
- قم بإنشاء نسخة من فئة FontsLoader واستدعاء الطريقة FontsLoader::LoadExternalFonts.
- قم بتحميل العرض التقديمي الذي سيتم عرضه.
- قم بإفراغ الذاكرة المؤقتة في فئة FontsLoader.
يوضح هذا الكود C++ عملية تحميل الخط:
const String fontPath = u"../templates/";
const String outPath = u"../out/UseCustomFonts_out.pptx";
const String templatePath = u"../templates/DefaultFonts.pptx";
// تعيين مسار الخطوط
ArrayPtr<String> folders = System::MakeObject<Array<String>>(1, fontPath);
// تحميل خطوط الدليل المخصص
FontsLoader::LoadExternalFonts(folders);
// قم ببعض العمل وإجراء عرض تقديمي/تقديم الشرائح
SharedPtr<Presentation> pres = MakeObject<Presentation>(templatePath);
pres->Save(outPath, Export::SaveFormat::Pptx);
// إفراغ ذاكرة الخط
FontsLoader::ClearCache();
احصل على مجلد الخطوط المخصصة
يوفر Aspose.Slides FontsLoader::GetFontFolders() للسماح لك بالعثور على مجلدات الخطوط. تعيد هذه الطريقة المجلدات المضافة من خلال طريقة LoadExternalFonts
ومجلدات الخطوط النظامية.
يوضح هذا الكود C++ كيفية استخدام طريقة FontsLoader::GetFontFolders():
// هذه السطر يخرج المجلدات التي تم التحقق منها لملفات الخطوط.
// هذه هي المجلدات المضافة عبر طريقة LoadExternalFonts ومجلدات الخطوط النظامية.
auto fontFolders = FontsLoader::GetFontFolders();
حدد الخطوط المخصصة المستخدمة مع العرض التقديمي
يوفر Aspose.Slides خاصية LoadOptions::set_DocumentLevelFontSources للسماح لك بتحديد خطوط خارجية سيتم استخدامها مع العرض التقديمي.
يوضح هذا الكود C++ كيفية استخدام خاصية LoadOptions::set_DocumentLevelFontSources:
auto memoryFont1 = File::ReadAllBytes(u"customfonts\\CustomFont1.ttf");
auto memoryFont2 = File::ReadAllBytes(u"customfonts\\CustomFont2.ttf");
auto loadOptions = System::MakeObject<LoadOptions>();
loadOptions->get_DocumentLevelFontSources()->set_FontFolders(System::MakeArray<String>({u"assets\\fonts", u"global\\fonts"}));
loadOptions->get_DocumentLevelFontSources()->set_MemoryFonts(System::MakeArray<ArrayPtr<uint8_t>>({memoryFont1, memoryFont2}));
{
auto presentation = System::MakeObject<Presentation>(u"MyPresentation.pptx", loadOptions);
// العمل مع العرض التقديمي
// خط CustomFont1 و CustomFont2 وكذلك الخطوط من مجلدات assets\fonts و global\fonts متاحة للعرض التقديمي
}
إدارة الخطوط خارجيًا
يوفر Aspose.Slides طريقة FontsLoader::LoadExternalFont للسماح لك بتحميل الخطوط الخارجية إلى مصفوفة بايت.
يوضح هذا الكود C++ عملية تحميل الخط إلى مصفوفة بايت:
// مسار دليل الوثائق
const String outPath = u"../out/SpecifyFontsUsedWithPresentation.pptx";
const String templatePath = u"../templates/AccessSlides.pptx";
ArrayPtr<String> fontsLocation = MakeArray<System::String>({ u"assets\\fonts", u"global\\fonts" });// ;
ArrayPtr<ArrayPtr<uint8_t>> memoryfontsLocation = MakeArray < ArrayPtr<uint8_t>>({ File::ReadAllBytes(u"../templates/CustomFont1.ttf"), File::ReadAllBytes(u"../templates/CustomFont2.ttf") });
SharedPtr < Aspose::Slides::LoadOptions > loadOptions = MakeObject <Aspose::Slides::LoadOptions>();
loadOptions->get_DocumentLevelFontSources()->set_FontFolders(fontsLocation);
loadOptions->get_DocumentLevelFontSources()->set_MemoryFonts(memoryfontsLocation);
SharedPtr<Presentation> pres = MakeObject<Presentation>(templatePath, loadOptions);