Anwendungsfälle für Aspose.Font FOSS for Python
Anwendungsfälle für Aspose.Font FOSS for Python
Web-Schriftartvorbereitung
Reduzieren Sie die Downloadgröße, indem Sie eine Schriftart auf nur die für eine Webseite benötigten Zeichen beschränken und anschließend in WOFF2 konvertieren, um maximale Kompression zu erreichen:
from aspose_font import FontLoader
from aspose_font import FontSubsetter
from aspose_font.converter import FontConverter # internal API — may change between releases
from aspose_font import FontType
font = FontLoader.open("Roboto-Regular.ttf")
subset = FontSubsetter.subset_by_text(font, "Hello World 0123456789")
woff2 = FontConverter.convert(subset, FontType.WOFF2)Modernisierung von Legacy-Schriftarten
Konvertieren Sie ältere Formate (Type 1, EOT) in moderne TTF oder WOFF2 für plattformübergreifende Unterstützung:
from aspose_font import FontLoader
from aspose_font.converter import FontConverter # internal API — may change between releases
from aspose_font import FontType
font = FontLoader.open("LegacyFont.pfb") # Type 1
ttf = FontConverter.convert(font, FontType.TTF)Schriftart-Inspektion und -Audit
Untersuchen Sie die Glyphenanzahl, Schriftmetriken und das Vorhandensein von Tabellen zur Qualitätssicherung:
from aspose_font import FontLoader
from aspose_font import TtfFont
ttf_font: TtfFont = FontLoader.open("MyFont.ttf")
print("Name:", ttf_font.font_name)
print("Glyphs:", ttf_font.num_glyphs)
print("kern:", ttf_font.ttf_tables.kern is not None)Analyse auf Glyphenebene
Zugriff auf einzelne Glyphen per Unicode-Codepunkt für Text-Render-Pipelines:
from aspose_font import FontLoader
font = FontLoader.open("MyFont.ttf")
for codepoint in [0x0041, 0x0042, 0x0043]: # A, B, C
glyph = font.glyph_accessor.get_glyph_by_unicode(codepoint)
print(glyph.glyph_id)Schriftbereinigung für Einbettung
Entfernen Sie nicht wesentliche Metadaten, bevor Sie eine Schriftart in ein PDF oder Dokument einbetten:
from aspose_font import FontLoader
from aspose_font import FontCleaner
font = FontLoader.open("MyFont.ttf")
cleaned = FontCleaner.clean_for_web(font, drop_mac_names=True, drop_legacy_tables=True, drop_metadata_tables=False)