Aspose.Font FOSS für Python ist ein reines Python-Toolkit zum Laden, Inspizieren, Konvertieren, Subsetzen und Vorschauen von Schriftarten in den Formaten TrueType, OpenType, CFF, Type 1, WOFF, WOFF2 und EOT. Die Bibliothek läuft auf Python 3.10 oder höher und erfordert keine externen OS‑Schriftbibliotheken oder native Abhängigkeiten.
Die Bibliothek stellt ein sauberes API für das Laden von Schriftarten über FontLoader, den Glyphenzugriff über GlyphAccessor, die Formatkonvertierung über FontConverter, die Weboptimierung über FontCleaner, das textbewusste Subsetzen über FontSubsetter und die Animation variabler Schriften über AnimationPreviewBuilder bereit. Schriftmetadaten wie Name, Familie, Stil, Glyphenzahl, Kodierung und Metriken sind über die Basisklasse Font zugänglich, ohne binäre Tabellen manuell zu parsen.
Aspose.Font FOSS ist unter der MIT-Lizenz verfügbar und kann mit einem einzigen pip‑install‑Befehl von PyPI installiert werden. Es eignet sich für Werkzeuge zur Schriftgestaltung, Web‑Font‑Pipelines, Glyph‑Rendering‑Engines und jede Python-Anwendung, die Schriftdateien lesen, transformieren oder erzeugen muss. Für die Enterprise‑Produktfamilie siehe Aspose.Font — Enterprise Product Family.
FontLoader.open() und FontLoader.load()Font auf Schriftart‑Metadaten zu: font_name, font_family, font_style, num_glyphsFontEncoding.unicode_to_gid() und get_all_codepoints()FontMetrics: Aufstieg, Abstieg, Zeilenabstand, Em‑QuadratGlyphAccessor.get_glyph_by_id() und get_glyph_by_unicode() abrufenGlyphAccessor.get_glyphs_for_text() auflösenMoveTo, LineTo, QuadraticTo, CurveTo, ClosePathGlyph Eigenschaften zugreifenKernPair für genaue Textlayout-Berechnungen lesenFontConverter.convert()CurveAdapter.quad_to_cubic() und cubic_to_quads()convert_path_quad_to_cubic() und convert_path_cubic_to_quad()FontSubsetter.subset_by_text()FontSubsetter.subset_by_gids()FontSubsetter.subset_for_web()FontSubsetter.subset_by_presets() und available_presets() anwendenFontSubsetter.analyze_coverage() und analyze_web_coverage()FontCleaner.clean_for_web()CompatibilityChecker.compare_fonts() und compare_variable_instances()AnimationPreviewBuilder.build_axis_sweep()AnimationPreviewBuilder.build_path()Öffnen Sie eine TrueType- oder OpenTyme-Schriftart aus einem Dateipfad und lesen Sie die grundlegenden Metadaten.
from aspose_font.loader import FontLoader
font = FontLoader.open("Roboto-Regular.ttf")
print(font.font_name) # e.g. "Roboto"
print(font.font_family) # e.g. "Roboto"
print(font.num_glyphs) # e.g. 1294
Lösen Sie alle Glyphen für einen Unicode-Code und überprüfen Sie deren Umrisspfade.
from aspose_font.loader import FontLoader
font = FontLoader.open("OpenSans-Regular.otf")
glyph_id = font.encoding.unicode_to_gid(0x41) # Unicode for A
glyph = font.glyph_accessor.get_glyph_by_id(glyph_id)
for cmd in glyph.path.commands:
print(type(cmd).__name__, cmd)
Erstellen Sie eine animierte APNG, die eine variable Schrift-Achse vom Anfang bis zum Endwert durchsucht.
from aspose_font.loader import FontLoader
from aspose_font.animation import AnimationPreviewBuilder
font = FontLoader.open("Roboto-VariableFont_wdth,wght.ttf")
asset = AnimationPreviewBuilder.build_axis_sweep(
font,
axis_tag="wdth",
start_val=75.0,
end_val=100.0,
frames=3,
fps=10,
text="A",
size=10.0,
bounce=True,
)
asset.write_to("roboto-sweep-wdth.png")
Stripe alte Tabellen und Mac-Namen aufzeichnungen, um binäre Größe vor Webservice zu reduzieren.
from aspose_font.loader import FontLoader
from aspose_font.cleaner import FontCleaner
font = FontLoader.open("Roboto-Regular.ttf")
cleaned = FontCleaner.clean_for_web(font)
# DSIG, FFTM, meta tables removed; Mac platform name records stripped
Es ist eine kostenlose, mit MIT-Lizenz lizenzierte reine Python-Bibliothek zum Laden, Inspektieren, Konvertieren und Unterstellen von Schriftarten in TTF-, OTF-CFF-, Typ-1-Wowff-, WOFF2- und EOT-Formaten. Keine native Abhängigkeiten sind erforderlich.
Führen Sie pip install "aspose-font>=1.0.0" aus. Es werden keine systemweiten Abhängigkeiten benötigt. Die Bibliothek funktioniert unter Windows, macOS und Linux mit Python 3.10 oder höher.
FontLoader.open() liest TTF, OTF und CFF, Typ 1, WOFF und WOff2, sowie EOT. FontConverter.convert() schreibt TFT, CFC und Woff2. Eot ist nur für den Lesen verfügbar.
Nein. Font.to_bytes() ist nicht in der Basisklasse implementiert. Verwenden Sie FontConverter.convert(), um ein neues Font im gewünschten Format zu erzeugen.
Ja. FontSubsetter.subset_by_text(font, text) gibt ein neues Font zurück, das nur die für den angegebenen Text erforderlichen Glyphen enthält. FontSubsetter.subset(font, codepoints) und subset_by_gids(font, gids) bieten feinere Kontrolle.