خط PowerPoint مخصص في Java

تحميل الخطوط المخصصة

يسمح Aspose.Slides لك بتحميل الخطوط التي يتم عرضها في العروض التقديمية دون الحاجة إلى تثبيت تلك الخطوط. يتم تحميل الخطوط من دليل مخصص.

  1. أنشئ مثيلًا من فئة FontsLoader واستدعاء طريقة loadExternalFonts.
  2. قم بتحميل العرض التقديمي الذي سيتم عرضه.
  3. امسح ذاكرة التخزين المؤقت في فئة FontsLoader.

توضح شيفرة Java هذه عملية تحميل الخط:

// المجلدات للبحث عن الخطوط
String[] folders = new String[] { externalFontsDir };

// تحميل خطوط الدليل المخصص
FontsLoader.loadExternalFonts(folders);

// قم ببعض العمل وأداء عرض الشرائح
Presentation pres = new Presentation("DefaultFonts.pptx");
try {
    pres.save("NewFonts_out.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();

    // يمسح ذاكرة التخزين المؤقت للخطوط
    FontsLoader.clearCache();
}

الحصول على مجلد الخطوط المخصصة

يوفر Aspose.Slides طريقة getFontFolders للسماح لك بالعثور على مجلدات الخطوط. تُرجع هذه الطريقة المجلدات المضافة من خلال طريقة LoadExternalFonts و مجلدات الخطوط النظامية.

توضح شيفرة Java هذه كيفية استخدام getFontFolders:

// يقوم هذا السطر بإخراج المجلدات التي يتم البحث فيها عن ملفات الخطوط.
// هذه هي المجلدات المضافة من خلال طريقة LoadExternalFonts ومجلدات الخطوط النظامية.
String[] fontFolders = FontsLoader.getFontFolders();

تحديد الخطوط المخصصة المستخدمة مع العرض التقديمي

يوفر Aspose.Slides خاصية setDocumentLevelFontSources للسماح لك بتحديد الخطوط الخارجية التي سيتم استخدامها مع العرض التقديمي.

توضح شيفرة Java هذه كيفية استخدام خاصية setDocumentLevelFontSources :

byte[] memoryFont1 = Files.readAllBytes("customfonts/CustomFont1.ttf");
byte[] memoryFont2 = Files.readAllBytes("customfonts/CustomFont2.ttf");

LoadOptions loadOptions = new LoadOptions();
loadOptions.getDocumentLevelFontSources().setFontFolders(new String[] { "assets/fonts", "global/fonts" });
loadOptions.getDocumentLevelFontSources().setMemoryFonts(new byte[][] { memoryFont1, memoryFont2 });

Presentation pres = new Presentation("MyPresentation.pptx", loadOptions);
try {
    // العمل مع العرض التقديمي
    // CustomFont1 و CustomFont2 والخطوط من مجلدات assets\fonts و global\fonts ومجلداتها الفرعية متاحة للعروض التقديمية
} finally {
    if (pres != null) pres.dispose();
}

إدارة الخطوط خارجيًا

يوفر Aspose.Slides طريقة loadExternalFont(byte[] data) للسماح لك بتحميل الخطوط الخارجية من بيانات ثنائية.

توضح شيفرة Java هذه عملية تحميل الخطوط من مصفوفة بايت:

FontsLoader.loadExternalFont(Files.readAllBytes(Paths.get("ARIALN.TTF")));
FontsLoader.loadExternalFont(Files.readAllBytes(Paths.get("ARIALNBI.TTF")));
FontsLoader.loadExternalFont(Files.readAllBytes(Paths.get("ARIALNI.TTF")));

try
{
    Presentation pres = new Presentation("");
    try {
        // تم تحميل الخط الخارجي أثناء فترة عرض العرض التقديمي
    } finally {
        
    }
}
finally
{
    FontsLoader.clearCache();
}