1. מוצרים
  2.   Aspose.Font
  3.   Aspose.Font FOSS for Python

Aspose.Font FOSS עבור Python

ספרייה קוד פתוח Python לטעינה, בדיקה, המרה והפחתת קבצי גופנים TTF, OTF, CFF, WOFF, WOFF2, ו‑EOT.

עבודה עם גופנים תכנותית ב‑Python

Aspose.Font FOSS עבור Python הוא ערכת כלי pure-Python לטעינה, בדיקה, המרה, חיתוך והצגה מקדימה של גופנים בפורמטים TrueType, OpenType, CFF, Type 1, WOFF, WOFF2 ו‑EOT. הספרייה פועלת על Python 3.10 או גרסה מאוחרת יותר ואינה דורשת ספריות גופנים חיצוניות של מערכת ההפעלה או תלותיות מקומיות.

הספרייה חושפת 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()
  • זיהוי אוטומטי של פורמט: TTF, OTF, CFF, WOFF, WOFF2, EOT, Type 1
  • גש למטא‑נתוני הגופן דרך מחלקת הבסיס Font: font_name, font_family, font_style, num_glyphs
  • קרא מפות קידוד גליפים עם FontEncoding.unicode_to_gid() ו-get_all_codepoints()
  • בדוק מדדי גופן עם FontMetrics: עלייה, ירידה, רווח קו, em-square

מקרי שימוש טיפוסיים

  • צינורות אימות גופנים והוצאת מטא‑נתונים
  • בדיקות CI/CD שמוודאות את שם משפחת הגופן וספירת הגליפים
  • שירותי קבלת גופני אינטרנט שמקבלים פורמטים מרובים של קלט
  • כלי עיצוב גופנים המציגים מטא‑נתונים ללא סביבת ריצה שולחנית

גישה לגליפים ובדיקת נתיב

  • שחזר גליפים לפי מזהה או יוניקוד עם GlyphAccessor.get_glyph_by_id() ו-get_glyph_by_unicode()
  • פתור את כל הגליפים למחרוזת עם GlyphAccessor.get_glyphs_for_text()
  • בדוק את נתיבי קווי המתאר של הגליף כפקודות מוקלדות: MoveTo, LineTo, QuadraticTo, CurveTo, ClosePath
  • גש לתיבת הגבול של הגליף, לרוחב ההתקדמות ולתמיכות הצד מתכונות Glyph properties
  • קרא זוגות קירנינג מ-KernPair לחישובים מדויקים של פריסת טקסט

מקרי שימוש טיפוסיים

  • בדיקות כיסוי גליפים להצגת טקסט רב‑לשוני
  • חילוץ קו מתאר עבור נתיב SVG או יצירת וקטור
  • אימות טבלת קירנינג בתהליכי QA של גופנים
  • מחקר עיצוב טקסט וניסויים בפריסת רמה נמוכה

המרת גופנים

  • המרה בין TTF, OTF, CFF, WOFF, WOFF2, EOT, ו‑Type 1 עם FontConverter.convert()
  • התאם סוגי עקומות בזייה עם CurveAdapter.quad_to_cubic() ו-cubic_to_quads()
  • המר נתיבי גליף בין ריבועיים וקוביים עם convert_path_quad_to_cubic() ו-convert_path_cubic_to_quad()

מקרי שימוש טיפוסיים

  • צינורות גופני אינטרנט שממירים גופני מקור TTF ל‑WOFF2 להפצה
  • כלי טיפוגרפיה שמייצא למספר יעדי פורמט ממקור אחד
  • המרת EOT מדור קודם לתמיכה בערימות גופנים אינטרנטיות תואמות לאחור
  • נרמול פורמט גופנים אוטומטי באינטגרציה רציפה

תת‑קבוצת גופנים

  • חלק גופנים לפי טקסט Unicode עם FontSubsetter.subset_by_text()
  • תת‑קבוצה לפי רשימת מזהי גליף עם FontSubsetter.subset_by_gids()
  • הפק תתי‑קבוצות מותאמות לאינטרנט עם FontSubsetter.subset_for_web()
  • החל פרופילי קבועים בשם באמצעות FontSubsetter.subset_by_presets() ו-available_presets()
  • נתח כיסוי תת‑קבוצה עם FontSubsetter.analyze_coverage() ו‑analyze_web_coverage()

מקרי שימוש טיפוסיים

  • הפחתת גודל מטען ה‑WOFF2 עבור דפי אינטרנט עם מערכי תווים מוגבלים
  • ייצור תתי‑קבוצות גופנים ספציפיות לשפה לפריסות i18n
  • תהליכי רישוי גופנים שמפזרים תתי‑קבוצות לפי ערכת דפים
  • אופטימיזציית ביצועים לאפליקציות אינטרנט ניידות

אופטימיזציה לאינטרנט ותצוגות מקדימות של גופנים משתנים

  • הסר טבלאות מדור קודם ורשומות שם של Mac עם FontCleaner.clean_for_web()
  • בדוק תאימות של ציר גופן משתנה עם CompatibilityChecker.compare_fonts() וcompare_variable_instances()
  • צור סריקות ציר מונפשות בפורמט APNG עם AnimationPreviewBuilder.build_axis_sweep()
  • בנה מסלולי אנימציה מרובי‑שלבים עם AnimationPreviewBuilder.build_path()

מקרי שימוש טיפוסיים

  • דפי דוגמאות גופנים וחוקרי צירים אינטראקטיביים עבור בתי טיפוגרפיה
  • צינורות CI שמוודאים את התנהגות הפונט המשתנה לפני הפצה
  • צינורות ביצועי רשת שמורידים טבלאות בינריות לא חיוניות
  • תמונות ממוזערות של תצוגת גופנים עבור יישומי ניהול גופנים

טעינת קובץ גופן

פתח גופן TrueType או OpenType ממסלול קובץ וקרא את המטא‑נתונים הבסיסיים שלו.

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

שאלות נפוצות

מהו Aspose.Font FOSS עבור Python?

זהו ספרייה חינמית, ברישיון MIT, pure-Python לטעינה, בדיקה, המרה והקטנת גופנים בפורמטים TTF, OTF, CFF, Type 1, WOFF, WOFF2 ו‑EOT. אין צורך בתלויות מקומיות.

איך אני מתקין Aspose.Font FOSS עבור Python?

הפעל pip install "aspose-font>=1.0.0". אין צורך בתלויות ברמת המערכת. הספרייה פועלת ב‑Windows, macOS ו‑Linux עם Python 3.10 ומעלה.

אילו פורמטים של גופנים נתמכים?

FontLoader.open() קורא TTF, OTF, CFF, Type 1, WOFF, WOFF2 ו‑EOT. FontConverter.convert() כותב TTF, CFF, WOFF ו‑WOFF2. EOT הוא קריאה‑בלבד.

האם Font.to_bytes() זמין?

לא. Font.to_bytes() לא ממומש במחלקה הבסיסית. השתמש ב‑FontConverter.convert() כדי ליצור Font חדש בפורמט הרצוי.

האם ניתן לבצע תת‑קבוצה של גופן למטרת אספקה באינטרנט?

כן. FontSubsetter.subset_by_text(font, text) מחזיר Font חדש המכיל רק את הגליפים הדרושים לטקסט הנתון. FontSubsetter.subset(font, codepoints) ו‑subset_by_gids(font, gids) מספקים שליטה מדויקת יותר.

  

משאבי תמיכה ולמידה

 עברית