כיצד לעבוד עם TTF Fonts ב- Python
מדריך זה מראה כיצד להטעין טקסטים TTF, לבדוק TtfFont תכונות, טבלאות קריאה, צורות משתנות מיידיות, ולהמיר לתבניות אחרות באמצעות Aspose.Font FOSS עבור Python..ttfהם הפורמט הנפוץ ביותר של טופס. Aspose.Font FOSS מחזיר אותם כ TtfFont דוגמאות, מתן גישה לטבלאות, אסי שורת משתנים, נתונים glyph, ושיטות ההפוך.
הדרכה שלב אחר צעד
שלב 1: התקנת החבילה
התקנת חבילת Aspose.Font FOSS מ-PyPI באמצעות הפקודה Pip למטה:
pip install "aspose-font>=1.0.0"שלב 2: ייבוא שיעורים נדרשים
ייבוא FontLoader ו TtfFont כדי להעלות טופס TTF ולהשיג את המאפיינים הנכתבים שלה:
from aspose_font.loader import FontLoader
from aspose_font.ttf.font import TtfFontשלב 3: הטעינה והבדקה של טפט TTF
להעלות קובץ TTF באמצעות FontLoader.open() קראו את המאפיינים הבסיסיים כגון שם, משפחה ומספר גליף:
ttf_font: TtfFont = FontLoader.open("Roboto-Regular.ttf")
print(ttf_font.font_name)
print(ttf_font.font_family)
print(ttf_font.num_glyphs)שלב 4: קרא את שולחן הליבה
גישה ל ttf_tables הבעלים והבדיקה של נוכחותו של לוח הליבה לפי שם:
ttf_font: TtfFont = FontLoader.open("Roboto-Regular.ttf")
kern = ttf_font.ttf_tables.kern
print("kern present:", kern is not None)שלב 5: הגדרת ציר משתנה
להעלות קובץ טקסט משתנה, לבדוק is_variable,ונקרא instantiate() עם מילון אסיס כדי לייצר דוגמה סטטית:
from aspose_font.loader import FontLoader
from aspose_font.ttf.font import TtfFont
ttf_font: TtfFont = FontLoader.open("Roboto-VariableFont_wdth,wght.ttf")
if ttf_font.is_variable:
static = ttf_font.instantiate({"wght": 700.0})
print("Instantiated:", static.font_name)שלב 6: להפוך ל- WOFF2
להפוך טקסט TTF משולב לתבנית WOFF2 על ידי העברת FontType.WOFF2 ל FontConverter.convert():
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)בעיות נפוצות ותקנות
AttributeError: Font has no attribute ttf_tables שימוש ttf_font: TtfFont = FontLoader.open(...). The ttf_tables הנכס נמצא על TtfFont,לא הבסיס Font.
is_variable שקר על צורה משתנה חלק מהחומרים משתנים באמצעות חומר לא סטנדרטי. fvar צורת המפה - בדוק ttf_font.fvar is not None כמו חלופה.
instantiate() גדלים KeyError תגית המזרן חייבת להיות תווית רשומה של 4 צלחות. (הדוגמה היא. "wght", "wdth"• צפו ttf_font.axes עבור תגיות זמינות.
שאלות נפוצות שואלים
מה ההבדל בין TTF ו- OTF?
OTF ו- TTF חולקים את אותו מחסן בינארי (SFNT). בעוד טקסטים TTF משתמשים TrueType קווי קדראטי. FontLoader.open().
האם אני יכול לקבל זוגות גרעין מתוך טפט TTF?
כן – שימוש TtfFont.get_kern_pairs() כדי לקבל רשימה של KernPair אובייקטים.
האם הספרייה תומכת באוסף של טקסטים (.ttc)?
כן – שימוש FontLoader.open(source, collection_index=N) כדי לבחור טופס מסוים מתוך קובץ איסוף TTC.