Как да работим с управление на основните шрифтове в Python
Aspose.Font FOSS for Python provides FontLoader като основна входна точка за зареждане на шрифтове Отвърнаните файлове са изтеглени от страниците на панел, битовите масиви или потоковете. Font обектът излага метаданните като име, фамилия, стил, брой на глифите и кодиране на картата.
Постепенно ръководство
Стъпка 1: Инсталирайте пакета
pip install "aspose-font>=1.0.0"Стъпка 2: Импортиране на необходимите класове
from aspose_font.loader import FontLoader
from aspose_font.ttf.font import TtfFontСтъпка 3: Зареждане на шрифт от пътека за файл
Обади се. FontLoader.open() Методът открива формата автоматично и връща съответния файл. Font подклас (TtfFont, CffFont, и т.н.):
font = FontLoader.open("Roboto-Regular.ttf")
print(font.font_name)
print(font.num_glyphs)Стъпка 4: Достъп до метрики на шрифта
Съветът на ЕС Font.metrics свойството връща a FontMetrics обект, съдържащ възходящи, слизащи знаци, разстояние между линиите, височина на капака и други типографски измервания за шрифта:
from aspose_font.loader import FontLoader
font = FontLoader.open("Roboto-Regular.ttf")
metrics = font.metrics
print(metrics)Стъпка 5: Преобразуване в друг формат
Предайте зареден шрифт на: FontConverter.convert() с желаното. FontType Методът връща нов обект на шрифта в поискания формат, без да променя оригинала:
from aspose_font.loader import FontLoader
from aspose_font.converter import FontConverter
from aspose_font import FontType
font = FontLoader.open("Roboto-Regular.ttf")
woff2 = FontConverter.convert(font, FontType.WOFF2)Обичайни проблеми и решения
FontType Не е намерен. Внос FontType от най-високото ниво. aspose_font опаковка: from aspose_font import FontType.
Font has no attribute font_name Уверете се, че използвате Font Връщане на екземпляр от: FontLoader.open(), не е обект на сурови байтове.
Грехове при кодиране на маршрути за Windows Преминаване на пътеки като сурови струни: r"C:\Fonts\MyFont.ttf".
Често задавани въпроси
Кои формати на шрифтове поддържа FontLoader?
FontLoader.open() Поддържа TTF, OTF и CFF, тип 1, WOFF и EOT.
Мога ли да заредим шрифт от байтове?
- Да, много добре.
FontLoader.open()приема файлов път, байт или обект поток чрезsourceс ясен аргумент.font_typeпараметър.
Font.to_bytes ((() наличен ли е?
- Не, не съм.
Font.to_bytes()не е имплементиран в базовия клас. ИзползвайтеFontConverter.convert()за промяна на формата, след това използвайте методите за съхранение на подкласите.