StreamFontSource

StreamFontSource class

Basisklasse für benutzerdefinierte Stream-Schriftartquelle.

Um mehr zu erfahren, besuchen Sie dieArbeiten mit Schriftarten Dokumentationsartikel.

public abstract class StreamFontSource : FontSourceBase

Eigenschaften

NameBeschreibung
CacheKey { get; }Der Schlüssel dieser Quelle im Cache.
Priority { get; }Gibt die Priorität der Schriftartquelle zurück.
Type { get; }Gibt den Typ der Schriftartquelle zurück.
WarningCallback { get; set; }Wird während der Verarbeitung der Schriftartquelle aufgerufen, wenn ein Problem erkannt wird, das zu einem Verlust der Formatierungstreue führen könnte.

Methoden

NameBeschreibung
GetAvailableFonts()Gibt eine Liste der über diese Quelle verfügbaren Schriftarten zurück.
abstract OpenFontDataStream()Diese Methode sollte den Stream bei Bedarf mit Schriftartdaten öffnen.

Bemerkungen

Um die Stream-Schriftartquelle verwenden zu können, sollten Sie eine abgeleitete Klasse daraus erstellenStreamFontSource und stellen die Implementierung bereitOpenFontDataStream Methode.

OpenFontDataStreamMethode könnte mehrmals aufgerufen werden. Zum ersten Mal heißt es , wenn Aspose.Words die bereitgestellten Schriftartquellen durchsucht, um die Liste der verfügbaren Schriftarten zu erhalten. Später kann es aufgerufen werden, wenn die Schriftart im Dokument verwendet wird, um die Schriftartdaten zu analysieren und die Schriftartdaten in einige Ausgabeformate einzubetten.

StreamFontSource kann nützlich sein, da es ermöglicht, die Schriftdaten nur dann zu laden, wenn sie benötigt werden und sie nicht im Speicher für den zu speichernFontSettings Lebensdauer.

Beispiele

Zeigt, wie Schriftarten aus dem Stream geladen werden.

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>
/// Laden Sie die Schriftartdaten nur bei Bedarf, anstatt sie im Speicher zu speichern
/// für die gesamte Lebensdauer des „FontSettings“-Objekts.
/// </summary>
private class StreamFontSourceFile : StreamFontSource
{
    public override Stream OpenFontDataStream()
    {
        return File.OpenRead(FontsDir + "Kreon-Regular.ttf");
    }
}

Siehe auch