StreamFontSource

StreamFontSource class

Basklass för användardefinierad strömfontkälla.

För att lära dig mer, besökArbeta med teckensnitt dokumentationsartikel.

public abstract class StreamFontSource : FontSourceBase,   

Egenskaper

namnBeskrivning
CacheKey { get; }Nyckeln till denna källa i cachen.
Priority { get; }Returnerar teckensnittets källprioritet.
Type { get; }Returnerar typen av teckensnittskällan.
WarningCallback { get; set; }Anropas under bearbetning av teckensnittskälla när ett problem upptäcks som kan leda till förlust av formateringstillverkning.

Metoder

namnBeskrivning
GetAvailableFonts()Returnerar en lista över teckensnitt som är tillgängliga via denna källa.
abstract OpenFontDataStream()Den här metoden bör öppna strömmen med teckensnittsdata på begäran.

Anmärkningar

För att kunna använda strömfontkällan bör du skapa en härledd klass frånStreamFontSource och tillhandahålla implementering avOpenFontDataStream metod.

OpenFontDataStreamMetoden kan anropas flera gånger. För första gången kommer den att anropas när Aspose.Words skannar de angivna teckensnittskällorna för att hämta en lista över tillgängliga teckensnitt. Senare kan den anropas om teckensnittet används i dokumentet för att analysera teckensnittsdata och bädda in teckensnittsdata i vissa utdataformat.

StreamFontSource kan vara användbart eftersom det tillåter att teckensnittsdata endast laddas när det behövs och inte lagras i minnet förFontSettings livstid.

Exempel

Visar hur man laddar teckensnitt från strömmen.

public void StreamFontSourceFileRendering()
{
    FontSettings fontSettings = new FontSettings();
    fontSettings.SetFontsSources(new FontSourceBase[] {new StreamFontSourceFile()});

    DocumentBuilder builder = new DocumentBuilder();
    builder.Document.FontSettings = fontSettings;
    builder.Font.Name = "Kreon-Regular";
    builder.Writeln("Test aspose text when saving to PDF.");

    builder.Document.Save(ArtifactsDir + "FontSettings.StreamFontSourceFileRendering.pdf");
}

/// <summary>
/// Ladda endast teckensnittsdata när det behövs istället för att lagra dem i minnet
/// för hela livslängden för "FontSettings"-objektet.
/// </summary>
private class StreamFontSourceFile : StreamFontSource
{
    public override Stream OpenFontDataStream()
    {
        return File.OpenRead(FontsDir + "Kreon-Regular.ttf");
    }
}

Se även