FontSavingArgs

FontSavingArgs class

يوفر بيانات لـFontSaving الحدث.

لمعرفة المزيد، قم بزيارةحفظ مستند مقالة توثيقية.

public class FontSavingArgs

الخصائص

اسموصف
Bold { get; }يشير إلى ما إذا كان الخط الحالي غامقًا.
Document { get; }يحصل على كائن المستند الذي يتم حفظه.
FontFamilyName { get; }يشير إلى اسم عائلة الخط الحالية.
FontFileName { get; set; }يحصل على اسم الملف (بدون مسار) الذي سيتم حفظ الخط فيه أو يعينه.
FontStream { get; set; }يسمح بتحديد الدفق الذي سيتم حفظ الخط فيه.
IsExportNeeded { get; set; }يسمح بتحديد ما إذا كان سيتم تصدير الخط الحالي كمورد خط. الإعداد الافتراضي هوحقيقي .
IsSubsettingNeeded { get; set; }يسمح بتحديد ما إذا كان سيتم تقسيم الخط الحالي قبل تصديره كمورد خط.
Italic { get; }يشير إلى ما إذا كان الخط الحالي مائلًا.
KeepFontStreamOpen { get; set; }يحدد ما إذا كان يجب على Aspose.Words إبقاء الدفق مفتوحًا أو إغلاقه بعد حفظ الخط.
OriginalFileName { get; }يحصل على اسم ملف الخط الأصلي مع الامتداد.
OriginalFileSize { get; }يحصل على حجم ملف الخط الأصلي.

ملاحظات

عندما يقوم Aspose.Words بحفظ مستند بتنسيق HTML أو تنسيقات ذات صلة وExportFontResources تم تعيين علىحقيقي، فهو يحفظ كل موضوع خط للتصدير في ملف منفصل.

FontSavingArgs يتحكم فيما إذا كان ينبغي تصدير مورد خط معين وكيفية القيام بذلك.

FontSavingArgsيسمح أيضًا بإعادة تعريف كيفية إنشاء أسماء ملفات الخطوط أو التحايل تمامًا على حفظ الخطوط في الملفات من خلال توفير كائنات التدفق الخاصة بك.

لتحديد ما إذا كنت تريد حفظ مورد خط معين، استخدمIsExportNeeded ملكية.

لحفظ الخطوط في التدفقات بدلاً من الملفات، استخدمFontStream ملكية.

أمثلة

يوضح كيفية تحديد منطق مخصص لتصدير الخطوط عند الحفظ في HTML.

public void SaveExportedFonts()
{
    Document doc = new Document(MyDir + "Rendering.docx");

    // قم بتكوين كائن SaveOptions لتصدير الخطوط إلى ملفات منفصلة.
    // قم بتعيين معاودة الاتصال التي ستتعامل مع حفظ الخط بطريقة مخصصة.
    HtmlSaveOptions options = new HtmlSaveOptions
    {
        ExportFontResources = true,
        FontSavingCallback = new HandleFontSaving()
    };

    // ستقوم وظيفة معاودة الاتصال بتصدير ملفات .ttf وحفظها إلى جانب مستند الإخراج.
    doc.Save(ArtifactsDir + "HtmlSaveOptions.SaveExportedFonts.html", options);

    foreach (string fontFilename in Array.FindAll(Directory.GetFiles(ArtifactsDir), s => s.EndsWith(".ttf")))
    {
        Console.WriteLine(fontFilename);
    }

}

/// <summary>
/// يطبع معلومات حول الخطوط المصدرة ويحفظها في نفس مجلد النظام المحلي مثل ملف .html الناتج عنها.
/// </summary>
public class HandleFontSaving : IFontSavingCallback
{
    void IFontSavingCallback.FontSaving(FontSavingArgs args)
    {
        Console.Write($"Font:\t{args.FontFamilyName}");
        if (args.Bold) Console.Write(", bold");
        if (args.Italic) Console.Write(", italic");
        Console.WriteLine($"\nSource:\t{args.OriginalFileName}, {args.OriginalFileSize} bytes\n");

        //يمكننا أيضًا الوصول إلى المستند المصدر من هنا.
        Assert.True(args.Document.OriginalFileName.EndsWith("Rendering.docx"));

        Assert.True(args.IsExportNeeded);
        Assert.True(args.IsSubsettingNeeded);

        // هناك طريقتان لحفظ الخط المُصدَّر.
        // 1 - احفظه في موقع نظام الملفات المحلي:
        args.FontFileName = args.OriginalFileName.Split(Path.DirectorySeparatorChar).Last();

        // 2 - احفظه في مجرى:
        args.FontStream =
            new FileStream(ArtifactsDir + args.OriginalFileName.Split(Path.DirectorySeparatorChar).Last(), FileMode.Create);
        Assert.False(args.KeepFontStreamOpen);
    }
}

أنظر أيضا