Aspose.Font FOSS за Python е чисто-Python комплект за зареждане, инспектиране, конвертиране, подмножаване и преглед на шрифтове в TrueType, OpenType, CFF, Type 1, WOFF, WOFF2 и EOT формати. Библиотеката работи на Python 3.10 или по-нова и не изисква външни OS шрифтови библиотеки или native зависимости.
Библиотеката предоставя чист API за зареждане на шрифтове чрез FontLoader, достъп до глифове чрез GlyphAccessor, конвертиране на формати чрез FontConverter, уеб оптимизация чрез FontCleaner, подмножаване, съобразено с текста, чрез FontSubsetter, и анимация на променливи шрифтове чрез AnimationPreviewBuilder. Метаданните на шрифта като име, семейство, стил, брой глифове, кодиране и метрики са достъпни чрез базовия клас Font без ръчно парсиране на бинарни таблици.
Aspose.Font FOSS е лицензирана под MIT и може да се инсталира от PyPI с една единствена команда pip install. Подходяща е за инструменти за проектиране на шрифтове, уеб шрифтови конвейери, двигатели за рендериране на глифове и всяко Python приложение, което трябва да чете, трансформира или създава шрифтови файлове. За корпоративното продуктовото семейство, вижте Aspose.Font — Enterprise Product Family.
FontLoader.open() и FontLoader.load()Font: font_name, font_family, font_style, num_glyphsFontEncoding.unicode_to_gid() и get_all_codepoints()FontMetrics: ascent, descent, line gap, em-squareGlyphAccessor.get_glyph_by_id() и get_glyph_by_unicode()GlyphAccessor.get_glyphs_for_text()MoveTo, LineTo, QuadraticTo, CurveTo, ClosePathGlyphKernPair за точни изчисления на оформление на текстаFontConverter.convert()CurveAdapter.quad_to_cubic() и cubic_to_quads()convert_path_quad_to_cubic() и convert_path_cubic_to_quad()FontSubsetter.subset_by_text()FontSubsetter.subset_by_gids()FontSubsetter.subset_for_web()FontSubsetter.subset_by_presets() и available_presets()FontSubsetter.analyze_coverage() и analyze_web_coverage()FontCleaner.clean_for_web()CompatibilityChecker.compare_fonts() и compare_variable_instances()AnimationPreviewBuilder.build_axis_sweep()AnimationPreviewBuilder.build_path()Отворете TrueType или OpenTybe шрифт от файлов път и прочетете основните му метаданни.
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
Реши всички глифи за Unicode код точка и да провери техните контурни пътища.
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)
Създаване на анимиран APNG, който преминава променливата ос от началото до крайната стойност.
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")
Изтрийте старите таблици и записите на имената на Mac, за да намалите бинарния размер преди уеб сервиз.
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
Това е безплатна, лицензирана от MIT чиста Python библиотека за зареждане, проверка, конвертиране и подреждане на шрифтове в TTF, OTF , CFF, Type 1, WOFF , WOff2 и EOT формати. Не са необходими местни зависимости .
Изпълните pip install "aspose-font>=1.0.0". Не са необходими зависимости на системно ниво. Библиотеката работи върху Windows, macOS и Linux с Python 3.10 или по-нови.
FontLoader.open() чете TTF, OTF , CFF, тип 1, WOFF , WOff2 и EOT. FontConverter.convert() пише TFT, CFF, WOF и WOFC2. EOT е само за четене .
Не. Font.to_bytes() не е реализиран в базовия клас. Използвайте FontConverter.convert(), за да създадете нов Font в желания формат.
Да. FontSubsetter.subset_by_text(font, text) връща нов Font, съдържащ само глифовете, необходими за дадения текст.FontSubsetter.subset(font, codepoints) и subset_by_gids(font, gids) предоставят по-фино управление.