Як працювати з управлінням основним шрифтом в 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: Завантажити шрифт з шляху файлу
Call 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, WOff2 і EOT.
Чи можна завантажити шрифт з байтів?
Так, я знаю. FontLoader.open() приймає струнку шляху файлу, байти або об’єкт потоку через source з ясним доказом, font_type параметр.
Font.to_bytes ((() доступний?
Ні, не можу. Font.to_bytes() не реалізовано в базовому класі. Use FontConverter.convert() щоб змінити формат, потім використовуйте методи збереження підкласу.