Aspose.Font FOSS za Python je pure-Python toolkit za učitavanje, pregledanje, konvertovanje, podskup i pregled fontova u formatima TrueType, OpenType, CFF, Type 1, WOFF, WOFF2 i EOT. Biblioteka radi na Python 3.10 ili novijem i ne zahteva spoljne OS biblioteke fontova niti native zavisnosti.
Biblioteka izlaže čist API za učitavanje fontova putem FontLoader, pristup glifovima putem GlyphAccessor, konverziju formata putem FontConverter, web optimizaciju putem FontCleaner, podsečenje uzimajući u obzir tekst putem FontSubsetter, i animaciju varijabilnih fontova putem AnimationPreviewBuilder. Metapodaci fonta kao što su naziv, porodica, stil, broj glifova, kodiranje i metrike su dostupni kroz baznu klasu Font bez ručnog parsiranja binarnih tabela.
Aspose.Font FOSS je MIT licenciran i može se instalirati sa PyPI jednom pip install komandom. Pogodan je za alate za dizajn fontova, web font pipeline‑ove, engine‑e za renderovanje glifa i bilo koju Python aplikaciju koja treba da čita, transformiše ili proizvodi font fajlove. Za enterprise proizvodnu porodicu, pogledajte Aspose.Font — Enterprise Product Family.
FontLoader.open() i FontLoader.load()Font osnovne klase: font_name, font_family, font_style, num_glyphsFontEncoding.unicode_to_gid() i get_all_codepoints()FontMetrics: uspon, silazak, razmak linije, em‑kvadratGlyphAccessor.get_glyph_by_id() i get_glyph_by_unicode()GlyphAccessor.get_glyphs_for_text()MoveTo, LineTo, QuadraticTo, CurveTo, ClosePathGlyph svojstavaKernPair za tačne proračune rasporeda tekstaFontConverter.convert()CurveAdapter.quad_to_cubic() i cubic_to_quads()convert_path_quad_to_cubic() i convert_path_cubic_to_quad()FontSubsetter.subset_by_text()FontSubsetter.subset_by_gids()FontSubsetter.subset_for_web()FontSubsetter.subset_by_presets() i available_presets()FontSubsetter.analyze_coverage() i analyze_web_coverage()FontCleaner.clean_for_web()CompatibilityChecker.compare_fonts() i compare_variable_instances()AnimationPreviewBuilder.build_axis_sweep()AnimationPreviewBuilder.build_path()Otvorite TrueType ili OpenType font iz putanje do datoteke i pročitajte njegove osnovne metapodatke.
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
Razrešite sve glifove za Unicode kodnu tačku i pregledajte njihove konture putanje.
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)
Napravite animirani APNG koji prebacuje osu promenljive fonta od početne do krajnje vrednosti.
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")
Uklonite zastarele tabele i Mac zapise imena kako biste smanjili veličinu binarnog fajla pre web servisa.
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
To je besplatna, MIT-licencirana čista-Python biblioteka za učitavanje, pregledanje, konvertovanje i podskup fontova u TTF, OTF, CFF, Type 1, WOFF, WOFF2 i EOT formatima. Nema potrebe za nativnim zavisnostima.
Pokrenite pip install "aspose-font>=1.0.0". Nisu potrebne sistemske zavisnosti. Biblioteka radi na Windows, macOS i Linux uz Python 3.10 ili noviji.
FontLoader.open() čita TTF, OTF, CFF, Type 1, WOFF, WOFF2 i EOT. FontConverter.convert() piše TTF, CFF, WOFF i WOFF2. EOT je samo za čitanje.
Ne. Font.to_bytes() nije implementiran u osnovnoj klasi. Koristite FontConverter.convert() da proizvedete novi Font u željenom formatu.
Da. FontSubsetter.subset_by_text(font, text) vraća novi Font koji sadrži samo glifove potrebne za dati tekst. FontSubsetter.subset(font, codepoints) i subset_by_gids(font, gids) pružaju finiju kontrolu.