FontSavingArgsOriginalFileName Property

Gets the original font file name with an extension.

Namespace:  Aspose.Words.Saving
Assembly:  Aspose.Words (in Aspose.Words.dll) Version: 20.3
Syntax
public string OriginalFileName { get; }

Property Value

Type: String
Remarks

This property contains the original file name of the current font if it is known. Otherwise it can be an empty string.

Examples
Shows how to define custom logic for handling font exporting when saving to HTML based formats.
public void SaveHtmlExportFonts()
{
    Document doc = new Document(MyDir + "Rendering.docx");

    // Set the option to export font resources
    HtmlSaveOptions options = new HtmlSaveOptions(SaveFormat.Html);
    options.ExportFontResources = true;
    // Create and pass the object which implements the handler methods
    options.FontSavingCallback = new HandleFontSaving();

    doc.Save(ArtifactsDir + "Document.SaveHtmlExportFonts.html", options);
}

/// <summary>
/// Prints information about fonts and saves them alongside their output .html.
/// </summary>
public class HandleFontSaving : IFontSavingCallback
{
    void IFontSavingCallback.FontSaving(FontSavingArgs args)
    {
        // Print information about fonts
        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.IsExportNeeded);
        Assert.True(args.IsSubsettingNeeded);

        // We can designate where each font will be saved by either specifying a file name, or creating a new stream
        args.FontFileName = args.OriginalFileName.Split(Path.DirectorySeparatorChar).Last();

        args.FontStream = 
            new FileStream(ArtifactsDir + args.OriginalFileName.Split(Path.DirectorySeparatorChar).Last(), FileMode.Create);
        Assert.False(args.KeepFontStreamOpen);

        // We can access the source document from here also
        Assert.True(args.Document.OriginalFileName.EndsWith("Rendering.docx"));
    }
}
See Also