[Comm] шрифты в интерфейсе tk/tcl-программ

Maxim Tyurin =?iso-8859-1?q?mrkooll_=CE=C1_bungarus=2Einfo?=
Ср Ноя 8 18:18:06 MSK 2006


Vadim V. Zhytnikov пишет:
> Maxim Tyurin пишет:
> 
>> А там вроде и нет механизма. Берется первый шрифт подходящий под описание.
>> Просто описания в основном состоят из *
>> Поэтому и берется что попадется первым. А первым часто попадается всякая
>> гадость.
>>
> 
> Ну почему тогда в Mandrake русский совсем из другого семейства а не
> из гельветики?  Почему в Сизифе английский масштабируется а Русский нет?
> Как-то это всё это очень странно.  На код что-ли глянуть и посмотреть
> что он там действительно выбирает?  Хотя ей-ей жалко времени...

Я ошибся. Учил tk по старым книгам.
Начиная с tk 8.0 спользуется подстановка шрифтов если шрифт указан в
новом формате (типа -font {helvetica 12 bold} ). Причем подстановка
выполняется для каждого символа - tk обращается с каждому шрифту и
узнает может ли он отобразить нужный символ. И параметры шрифта могу
быть изменены. В принципе заточено на то чтоб программист не напрягался
выбором шрифта чтоб отобразить что нужно. Только красивости прийдется
добиваться самому.

Если шрифт указан в формате X Window то подстановка не выполняется -
берется первый шрифт подходящий под паттерн.
Если подходящий шрифт не найден будет ошибка.

P.S. Что tcl/tk творит со шрифтами можно немного понять посмотрев вывод
font names	выведет доступные имена шрифтов
font actual описание_шрифта выведет параметры соотв. характеристикам
указанного шрифта
font metrics описание_шрифта выведет метрики (инфу о размерах) шрифта.

P.P.S. Вроде сейчас все точно описал.
-- 
With Best Regards, Maxim Tyurin
JID:	MrKooll на jabber.pibhe.com
   ___
  / _ )__ _____  ___ ____ _______ _____
 / _  / // / _ \/ _ `/ _ `/ __/ // (_-<
/____/\_,_/_//_/\_, /\_,_/_/  \_,_/___/
               /___/

----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : signature.asc
Тип     : application/pgp-signature
Размер  : 252 байтов
Описание: OpenPGP digital signature
Url     : <http://lists.altlinux.org/pipermail/community/attachments/20061108/006c28f7/attachment-0003.bin>


Подробная информация о списке рассылки community