Aspose.Font FOSS za Python je čist-Python alat za učitavanje, pregledavanje, konvertiranje, 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 zahtijeva vanjske OS biblioteke fontova niti izvorne ovisnosti.
Biblioteka izlaže čist API za učitavanje fontova putem FontLoader, pristup glifovima putem GlyphAccessor, konverziju formata putem FontConverter, web optimizaciju putem FontCleaner, podrezivanje svjesno teksta putem FontSubsetter, i animaciju varijabilnih fontova putem AnimationPreviewBuilder. Metapodaci fonta poput imena, obitelji, stila, broja glifa, kodiranja i metrika dostupni su kroz baznu klasu Font bez ručnog parsiranja binarnih tablica.
Aspose.Font FOSS je licenciran pod MIT licencom i može se instalirati s PyPI jednim pip install naredbom. Pogodan je za alate za dizajn fontova, web font pipeline, engine za renderiranje glifova i bilo koju Python aplikaciju koja treba čitati, transformirati ili proizvesti font datoteke. Za enterprise obitelj proizvoda, pogledajte Aspose.Font — Enterprise Product Family.
FontLoader.open() i FontLoader.load()Font: font_name, font_family, font_style, num_glyphsFontEncoding.unicode_to_gid() i get_all_codepoints()FontMetrics: uspon, pad, razmak između redova, em‑kvadratGlyphAccessor.get_glyph_by_id() i get_glyph_by_unicode()GlyphAccessor.get_glyphs_for_text()MoveTo, LineTo, QuadraticTo, CurveTo, ClosePathGlyph svojstavaKernPair za točne izrač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 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
Razriješite sve glifove za Unicode kodnu toč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)
Stvorite animirani APNG koji pomiče varijabilnu os fonta od početne do krajnje vrijednosti.
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 naslijeđene tablice i Mac zapise imena kako biste smanjili veličinu binarne datoteke prije web posluživanja.
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, pregledavanje, konvertiranje i podskup fontova u formatima TTF, OTF, CFF, Type 1, WOFF, WOFF2 i EOT. Nisu potrebne nativne ovisnosti.
Pokrenite pip install "aspose-font>=1.0.0". Nisu potrebne ovisnosti na razini sustava. Biblioteka radi na Windowsu, macOS-u i Linuxu s Python 3.10 ili novijim.
FontLoader.open() čita TTF, OTF, CFF, Type 1, WOFF, WOFF2 i EOT. FontConverter.convert() zapisuje TTF, CFF, WOFF i WOFF2. EOT je samo za čitanje.
Ne. Font.to_bytes() nije implementiran u osnovnoj klasi. Upotrijebite FontConverter.convert() za stvaranje novog Font u željenom formatu.
Da. FontSubsetter.subset_by_text(font, text) vraća novi Font koji sadrži samo glifove potrebne za zadani tekst. FontSubsetter.subset(font, codepoints) i subset_by_gids(font, gids) pružaju finiju kontrolu.