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);
    }
}

أنظر أيضا