Aspose.Font FOSS pre Python je čistý nástrojový súbor na načítanie, inšpekciu, konverziu, subsetovanie a predvídanie písmen v formátoch TrueType, OpenTyme, CFF, Type 1, WOFF , WOff2 a EOT. Knižnica beží na Pythone 3.10 alebo novšom verzií a nevyžaduje žiadne externé knižnice písma operačného systému ani pôvodné závislosti.
Knižnica vystavuje čisté API pre načítanie písma prostredníctvom FontLoader, prístup k glyfom cez GlyphAccessor , konverziu formátu pomocou FontConverter, webovú optimalizáciu prostredníctvomFontCleaner a variabilnú animáciu písmu prostredníctvom AnimationPreviewBuilder. Metadata písmo ako meno, rodina, štýl, počet glyfot, kódovanie a metriky sú dostupné prostredníctvom základnej triedy Font bez manuálneho rozčlenenia binárnych tabuliek.
FOSS je licencovaný na MIT a inštalovateľný z PyPI s jedným príkazom Pip install. Je vhodný pre nástroje na návrh písma, webové fonty, motory na renderovanie glyfov a akékoľvek Python aplikácie, ktoré potrebujú čítať, transformovať alebo vytvárať súbory písmov. Pre rodinu podnikových produktov pozri Aspose.Font — Enterprise Product Family.
FontLoader.open() a FontLoader.load()Font: font_name, font_family , font_style a num_glyphsFontEncoding.unicode_to_gid() a get_all_codepoints()FontMetrics: stúpanie, zostup, medzery v čiare, em-kvadratGlyphAccessor.get_glyph_by_id() a get_glyph_by_unicode()GlyphAccessor.get_glyphs_for_text()MoveTo, LineTo , QuadraticTo a CurveTo.GlyphKernPair pre presné výpočty textového usporiadania.FontConverter.convert()CurveAdapter.quad_to_cubic() a cubic_to_quads()convert_path_quad_to_cubic() a convert_path_cubic_to_quad()FontSubsetter.subset_by_text()FontSubsetter.subset_by_gids()FontSubsetter.subset_for_web()FontSubsetter.subset_by_presets() a available_presets()FontSubsetter.analyze_coverage() a analyze_web_coverage()FontCleaner.clean_for_web()CompatibilityChecker.compare_fonts() a compare_variable_instances()AnimationPreviewBuilder.build_axis_sweep()AnimationPreviewBuilder.build_path()Otvorte TrueType alebo OpenTyme font z cesty súboru a prečítajte si jeho základné metadaty.
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
Vyřešte všetky glyfy pre Unicode kódový bod a skontrolujte ich výkresné cesty.
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)
Vytvorte animovaný APNG, ktorý prechádza očiarkou variabilného písma od začiatku po konečnú hodnotu.
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")
Zrušte staré tabuľky a záznamy o menách na Mac, aby ste znížili veľkosť binárnych údajov pred webovým serverovaním.
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
Je to bezplatná knižnica s čistým Pythonom, ktorá je licencovaná na inštaláciu, kontrolu a konverziu písmen v formátoch TTF, OTF a CFF. Nevyžaduje sa žiadne pôvodné závislosti.
pip install "aspose-font>=1.0.0". Nepotrebujú sa žiadne závislosti na systéme. Knižnica funguje vo Windows, macOS a Linux s Pythonom 3.10 alebo novším verziou.
FontLoader.open() číta TTF, OTF , CFF, Typ 1, WOFF , WOff2 a EOT. FontConverter.convert() píše TFT, CFC, WOF a WOFL2. Eot je iba pre čítanie.
Nie. Font.to_bytes() nie je implementovaný v základnej triede. Použite FontConverter.convert() na vytvorenie nového { PLACHAULDER _2 ] vo požadovanom formáte.
Áno. FontSubsetter.subset_by_text(font, text) vráti nový Font obsahujúci len glyfy požadované pre daný text.FontSubsetter.subset(font, codepoints) a subset_by_gids(font, gids) poskytujú jemnejšiu kontrolu.