tkinter.font --- پوششی برای فونت Tkinter

کد منبع: Lib/tkinter/font.py


ماژول tkinter.font کلاس Font را برای ایجاد و استفاده از فونت‌های نام‌گذاری‌شده فراهم می‌کند.

وزن‌ها و شیب‌های مختلف فونت عبارتند از:

tkinter.font.NORMAL
tkinter.font.BOLD
tkinter.font.ITALIC
tkinter.font.ROMAN
class tkinter.font.Font(root=None, font=None, name=None, exists=False, **options)

کلاس Font نشان‌دهنده یک فونت نام‌گذاری‌شده است. نمونه‌های Font نام‌های یکتا دریافت می‌کنند و می‌توانند با پیکربندی خانواده، اندازه و سبکشان مشخص شوند. فونت‌های نام‌گذاری‌شده روش Tk برای ایجاد و شناسایی فونت‌ها به‌عنوان یک شیء واحد هستند، به‌جای آنکه هر بار یک فونت با ویژگی‌هایش مشخص شود.

تغییر یافته در نسخه‌ی 3.10: دو فونت اکنون تنها زمانی برابر (==) مقایسه می‌شوند که هر دو نمونه‌هایی از Font با نام یکسان و متعلق به یک مفسر Tcl باشند.

آرگومان‌ها:

font - تاپل مشخص‌کننده فونت (خانواده، اندازه، گزینه‌ها)
name - نام یکتای فونت
exists - اگر true باشد، self به فونت نام‌گذاری‌شده‌ی موجود اشاره می‌کند

گزینه‌های کلیدواژه‌ای اضافی (اگر font مشخص شده باشد، نادیده گرفته می‌شوند):

family - خانواده قلم، برای مثال Courier، Times
size - اندازه‌ی قلم
اگر size مثبت باشد، به‌عنوان اندازه بر حسب نقطه تفسیر می‌شود.
اگر size عددی منفی باشد، مقدار مطلق آن در نظر گرفته می‌شود
به‌عنوان اندازه به پیکسل.
weight - تأکید قلم (NORMAL, BOLD)
slant - ROMAN, ITALIC
underline - زیرخط قلم (۰ - بدون زیرخط، ۱ - زیرخط)
overstrike - خط‌خوردگی قلم (۰ - بدون، ۱ - خط‌خورده)
actual(option=None, displayof=None)

ویژگی‌های واقعی قلم را برمی‌گرداند، که ممکن است به دلیل محدودیت‌های سکو با ویژگی‌های درخواست‌شده متفاوت باشند. بدون option، یک دیکشنری از تمام ویژگی‌ها را برمی‌گرداند؛ اگر option داده شود، مقدار همان ویژگی واحد را برمی‌گرداند. ویژگی‌ها بر روی نمایشگرِ ابزارک displayof تعیین می‌شوند، یا در صورت مشخص نبودن، بر روی پنجره‌ی اصلی برنامه.

cget(option)

ویژگی‌ای از فونت را بازیابی می‌کند.

configure(**options)

یک یا چند ویژگی قلم را تغییر می‌دهد. بدون آرگومان، یک دیکشنری از ویژگی‌های فعلی را برمی‌گرداند.

config() نام مستعار configure() است.

copy()

یک کپی متمایز از فونت جاری برمی‌گرداند: یک فونت نام‌گذاری‌شده‌ی جدید با همان ویژگی‌ها اما با نامی متفاوت، که می‌توان آن را به‌طور مستقل از فونت اصلی پیکربندی مجدد کرد. اگر فونت جاری دربرگیرنده‌ی یک توصیف فونت باشد، در عوض کپی یک فونت نام‌گذاری‌شده با ویژگی‌های تعیین‌شده‌ی آن است.

measure(text, displayof=None)

میزان فضایی را که متن در نمایشگر مشخص‌شده هنگام قالب‌بندی با فونت جاری اشغال خواهد کرد، به‌صورت عدد صحیحی از پیکسل برمی‌گرداند. اگر نمایشگری مشخص‌نشده باشد، پنجره‌ی اصلی برنامه در نظر گرفته می‌شود.

metrics(*options, **kw)

داده‌های خاص قلم را برمی‌گرداند. بدون هیچ گزینه‌ای، دیکشنری‌ای را برمی‌گرداند که هر نام معیار را به مقدار عدد صحیح آن نگاشت می‌کند؛ اگر نام یک گزینه داده شود، مقدار آن معیار را به‌صورت عدد صحیح برمی‌گرداند. گزینه‌ها شامل:

ascent - فاصله بین خط کرسی و بالاترین نقطه‌ای که یک

نویسه‌ای از فونت می‌تواند اشغال کند

descent - فاصله بین خط پایه و پایین‌ترین نقطه‌ای که یک

نویسه‌ای از فونت می‌تواند اشغال کند

linespace - حداقل فاصله‌ی عمودی مورد نیاز بین هر دو

نویسه‌های قلمی که تضمین می‌کند هیچ هم‌پوشانی عمودی بین سطرهای وجود نداشته باشد.

fixed - ۱ اگر فونت عرض‌ثابت باشد، در غیر این صورت ۰

tkinter.font.families(root=None, displayof=None)

یک تاپل از نام‌های خانواده‌های فونت موجود را برمی‌گرداند.

tkinter.font.names(root=None)

یک تاپل از نام‌های تمام قلم‌های تعریف‌شده را برمی‌گرداند.

tkinter.font.nametofont(name, root=None)

بازنمایی Font از فونت نام‌دار موجود name را برمی‌گرداند. root ابزارکی است که مفسر Tcl آن مالک فونت است؛ اگر حذف شود، از پنجره‌ی ریشه‌ی پیش‌فرض استفاده می‌شود.

تغییر یافته در نسخه‌ی 3.10: پارامتر root افزوده شد.