359 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			359 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 | ||
| <html>
 | ||
|   <head>
 | ||
|     <title>font</title>
 | ||
|   </head>
 | ||
|   <body>
 | ||
|     <h1>font</h1>
 | ||
| 
 | ||
| 
 | ||
|     <p>Создание шрифтов и контроль за ними.</p>
 | ||
| 
 | ||
|     <h2><a name="СИНТАКСИС"></a>СИНТАКСИС</h2>
 | ||
| 
 | ||
|     <pre>
 | ||
|       <strong>font</strong> <em>параметр арг арг ...</em>
 | ||
|     </pre>
 | ||
| 
 | ||
|     <h2><a name="ОПИСАНИЕ"></a>ОПИСАНИЕ</h2>
 | ||
| 
 | ||
|     <p>Команда <strong>font</strong> обеспечивает работу со шрифтами:
 | ||
|       определение поименованных шрифтов и запрос фактических
 | ||
|       параметров шрифтов. У команды несколько различных форм, которые
 | ||
|       задаются первым аргументом. В настоящее время поддерживаются
 | ||
|       следующие формы команды:</p>
 | ||
| 
 | ||
|     <dl>
 | ||
| 
 | ||
|       <dt><strong>font actual</strong> <em>шрифт</em>
 | ||
| 	<strong>-displayof</strong> <em>окно параметр</em></dt>
 | ||
| 
 | ||
|       <dd>Возвращает информацию о фактических значениях параметров
 | ||
| 	<em>шрифта</em>, выводимого на экран. Фактические параметры
 | ||
| 	могут отличаться от запрошенных благодаря ограничениям,
 | ||
| 	накладываемым платформами (например, доступность различных
 | ||
| 	семейств шрифтов или различных кеглей). Аргумент
 | ||
| 	<em>шрифт</em> представляет собой описатель шрифта ниже
 | ||
| 	(см. "<a href="#ОПИСАНИЕ_ШРИФТА">Описание
 | ||
| 	  шрифта</a>"). Если аргумент <em>окно</em> опущен, то по
 | ||
| 	умолчанию команда относится к главному окну. Если задан
 | ||
| 	аргумент <em>параметр</em>, то команда возвращает значение
 | ||
| 	указанного параметра. Если этот аргумент опущен, то
 | ||
| 	возвращаемое значение представляет собой список всех атрибутов
 | ||
| 	и их значений. Список возможных атрибутов приведен ниже
 | ||
| 	(см. "<a href="#ПАРАМЕТРЫ_ШРИФТОВ">Параметры
 | ||
| 	  шрифтов</a>").</dd>
 | ||
| 
 | ||
|       <dt><strong>font configure</strong> <em>имяшрифта параметр
 | ||
| 	  значение параметр значение ...</em></dt>
 | ||
| 
 | ||
|       <dd>Запрашивает значения параметров конфигурации примитива или
 | ||
| 	изменяет их. Если <em>параметр</em> не указан, то возвращает
 | ||
| 	список, содержащий значения всех параметров шрифта <em>имя
 | ||
| 	  шрифта</em> . Если <em>параметр</em> задан, а его новое
 | ||
| 	значение нет, то команда возвращает текущее значение
 | ||
| 	указанного <em>параметра</em> . Если заданы одна или несколько
 | ||
| 	пар параметр-значение, то указанным параметрам шрифта
 | ||
| 	присваиваются новые значения, а содержимое всех примитивов,
 | ||
| 	использующих данный шрифт меняется в соответствии с новыми
 | ||
| 	значениями параметров.  Список возможных атрибутов приведен
 | ||
| 	ниже (см. "<a href="#ПАРАМЕТРЫ_ШРИФТОВ">Параметры
 | ||
| 	  шрифтов</a>").</dd>
 | ||
| 
 | ||
|       <dt><strong>font create</strong><em>имяшрифта параметр значение
 | ||
| 	  ...</em></dt>
 | ||
| 
 | ||
|       <dd>Создает новый поименованный шрифт и возвращает его имя.
 | ||
| 	Аргумент <em>имяшрифта</em> задает имя шрифта; если этот
 | ||
| 	аргумент опущен, то Tk генерирует новое имя вида
 | ||
| 	<strong>font</strong><em>x</em><strong>,</strong> где x целое
 | ||
| 	число. Число пар параметр-значение может быть произвольным,
 | ||
| 	они задают значения соответствующих параметров нового
 | ||
| 	поименованного шрифта. Список возможных атрибутов приведен
 | ||
| 	ниже (см. "<a href="#ПАРАМЕТРЫ_ШРИФТОВ">Параметры
 | ||
| 	  шрифтов</a>").</dd>
 | ||
| 
 | ||
|       <dt><strong>font delete</strong> <em>имя_шрифта имя_шрифта ...</em></dt>
 | ||
| 
 | ||
|       <dd>Удаляет указанные поименованные шрифты. В случае, если
 | ||
| 	удаляемый шрифт используется в одном из примитивов,
 | ||
| 	фактическое удаление не происходит пока не будет вычеркнуто
 | ||
| 	последнее вхождение шрифта в примитив. Если удаленный
 | ||
| 	поименованный шрифт впоследствии создается вновь повторным
 | ||
| 	вызовом команды <strong>font create</strong>, то в примитивах
 | ||
| 	будет использоваться новый поименованный шрифт с новыми
 | ||
| 	значениями параметров.</dd>
 | ||
| 
 | ||
|       <dt><strong>font families -displayof</strong> <em>окно</em></dt>
 | ||
| 
 | ||
|       <dd>Возвращает список имен всех семейств шрифтов (без различения
 | ||
| 	верхнего и нижнего регистров), существующих на дисплее
 | ||
| 	заданного окна. Если аргумент окно опущен, то его значением по
 | ||
| 	умолчанию является главное окно.</dd>
 | ||
| 
 | ||
|       <dt><strong>font measure</strong> <em>шрифт</em>
 | ||
| 	<strong>-displayof</strong> <em>окно текст</em></dt>
 | ||
| 
 | ||
|       <dd>Подсчитывает протяженность текстовой строки при выводе ее на
 | ||
| 	экран в данном шрифте. Аргумент <em>шрифт</em> задает
 | ||
| 	описатель текста (см. "<a
 | ||
| 	href="#ОПИСАНИЕ_ШРИФТА">Описание шрифта</a>"). Возвращает
 | ||
| 	общую ширину текста в пикселах без учета сильно искаженных
 | ||
| 	символов (как, например, " f " курсивного). Если в
 | ||
| 	строке есть символы табуляции или перевода строки, то они не
 | ||
| 	влияют на результат подсчета.</dd>
 | ||
| 
 | ||
|       <dt><strong>font metrics</strong> <em>шрифт</em>
 | ||
| 	<strong>-displayof</strong> <em>окно параметр</em></dt>
 | ||
| 
 | ||
|       <dd>Возвращает информацию о метрических характеристиках
 | ||
| 	<em>шрифта</em> при его выводе на экран. Аргумент шрифт задает
 | ||
| 	описатель шрифта, (см. "<a href=
 | ||
| 	"#ОПИСАНИЕ_ШРИФТА">Описание шрифта</a>"). Если аргумент
 | ||
| 	окно опущен, то его значением по умолчанию является главное
 | ||
| 	окно.  Если задан аргумент параметр, то команда возвращает
 | ||
| 	значение указанной метрической характеристики; если этот
 | ||
| 	аргумент опущен, то возвращается список значений всех
 | ||
| 	метрических характеристик шрифта. Список метрических
 | ||
| 	характеристик приведен ниже (см. <a
 | ||
| 	href="#МЕТРИЧЕСКИЕ_ХАРАКТЕРИСТИКИ_ШРИФТОВ">Метрические
 | ||
| 	характеристики шрифтов</a>").</dd>
 | ||
| 
 | ||
|       <dt><strong>font names</strong></dt>
 | ||
| 
 | ||
|       <dd>Возвращает список всех поименованных на текущий момент
 | ||
| 	шрифтов.</dd>
 | ||
|     </dl>
 | ||
| 
 | ||
|     <h2><a name="ОПИСАНИЕ_ШРИФТА"></a>ОПИСАНИЕ ШРИФТА</h2>
 | ||
| 
 | ||
|     <p>В качестве описателя шрифта в любой из приведенных выше команд
 | ||
|       принимаются следующие данные; те же самые форматы допустимы и в
 | ||
|       качестве значения параметра <strong>-font</strong> в описателе
 | ||
|       примитива.</p>
 | ||
| 
 | ||
|     <dl>
 | ||
|       <dt>[1] <em>имя_шрифта</em></dt>
 | ||
| 
 | ||
|       <dd>Имя поименованного шрифта, созданного командой <strong>font
 | ||
| 	  create</strong>. Использование поименованного шрифта не
 | ||
| 	может привести к ошибке вне зависимости от того, насколько
 | ||
| 	потенциально ошибочны или бессмысленны значения параметров
 | ||
| 	этого шрифта. Если вывод символов в поименованном шрифте
 | ||
| 	невозможен, то для их вывода используется автоматически
 | ||
| 	подбираемый шрифт с близкими значениями параметров.</dd>
 | ||
| 
 | ||
|       <dt>[2] <em>сист_шрифт</em></dt>
 | ||
| 
 | ||
|       <dd>Имя (зависящее от используемой платформы) шрифта,
 | ||
| 	интерпретируемого графическим сервером. Сюда входит также (под
 | ||
| 	X) шрифт<strong>XLFD</strong> (см. [4]), в котором
 | ||
| 	используется единственный символ предназначенный для забивки
 | ||
| 	нескольких полей в середине имени. Список системных шрифтов
 | ||
| 	приведен в части текста, описывающей особенности данной
 | ||
| 	платформы.</dd>
 | ||
| 
 | ||
|       <dt>[3] семейство <em>размер стиль стиль ...</em></dt>
 | ||
| 
 | ||
|       <dd>Список, первым элементом которого является требуемое
 | ||
| 	семейство шрифтов, а вторым, необязательным, элементом
 | ||
| 	требуемый размер.  Параметр размер интерпретируется по тем же
 | ||
| 	правилам, что и параметр <strong>-size</strong> (см. "<a
 | ||
| 	  href="#ПАРАМЕТРЫ_ШРИФТОВ">Параметры шрифтов</A>"). Все
 | ||
| 	остальные необязательные аргументы, следующие за параметром
 | ||
| 	размер, представляют собой стили шрифтов. Они могут иметь
 | ||
| 	следующие значения: <strong>normal</strong>,
 | ||
| 	<strong>bold</strong>, <strong>roman</strong>,
 | ||
| 	<strong>italic</strong>, <strong>underline</strong>,
 | ||
| 	<strong>overstrike</strong>.</dd>
 | ||
| 
 | ||
|       <dt>[4] X-шрифт имена (XLFD)</dt>
 | ||
| 
 | ||
|       <dd><p>Имя шрифта для Unix-машин, представленное в виде:</p>
 | ||
| 
 | ||
| 	<p>-заливка-семейство-шрифт-наклон-устширина-добстиль-пиксель-точка-разрешx-разрешy-промежуток-ширина-наборсимволов-кодирование</p>
 | ||
| 
 | ||
| 	<p>-foundry-family-weight-slant-setwidth-addstyle-pixel-point-resx-resy-spacing-width-charset-encoding.</p>
 | ||
| 
 | ||
| 	<p>Поля, содержимое которых пользователю безразлично, можно
 | ||
| 	  пропустить, заменив символом " * ". Каждому
 | ||
| 	  пропущенному полю должен соответствовать ровно один символ
 | ||
| 	  " * ", а символ " * " в конце XLFD
 | ||
| 	  приводит к пропуску всех оставшихся полей; кратчайшая форма
 | ||
| 	  имеет вид просто " * ", что означает, что значения
 | ||
| 	  всех полей берутся по умолчанию. Всем пропущенным полям
 | ||
| 	  присваиваются значения по умолчанию. В целях совместимости
 | ||
| 	  XLFD всегда выбирает шрифт заданного размера в пикселах (а
 | ||
| 	  не в точках). Несмотря на некоторую некорректность
 | ||
| 	  выбранного подхода, все приложения, использующие XLFD,
 | ||
| 	  предполагают, что "точка" в действительности
 | ||
| 	  совпадает с одним пикселем, и при использовании корректного
 | ||
| 	  размера шрифта могут привести к неправильному выводу шрифта
 | ||
| 	  (обычно с более крупными символами).</p>
 | ||
|       </dd>
 | ||
| 
 | ||
|       <dt>[5] <em>параметр значение параметр значение ...</em></dt>
 | ||
| 
 | ||
|       <dd>Правильно сформированный список пар параметр-значение,
 | ||
| 	задающих атрибуты шрифта, в том же формате, что и при
 | ||
| 	определении поименованного шрифта (см. "<a
 | ||
| 	  href="#ПАРАМЕТРЫ_ШРИФТОВ">Параметры шрифтов</a>"). При
 | ||
| 	использовании описателя шрифта система пытается
 | ||
| 	проанализировать описание в соответствии с приведенными выше
 | ||
| 	пятью правилами в указанном порядке. В случаях [1] и [2] имя
 | ||
| 	шрифта должно соответствовать существующему поименованному
 | ||
| 	шрифту или системному шрифту. Случаи [3], [4] и [5]
 | ||
| 	принимаются на всех платформах и в них будет использоваться
 | ||
| 	шрифт, по параметрам ближайший к требуемому. В некоторых
 | ||
| 	ситуациях оказывается невозможно найти близкий шрифт
 | ||
| 	(например, имя семейства оказалось испорченным); в этом случае
 | ||
| 	выбирается один из системно-зависимых шрифтов по
 | ||
| 	умолчанию. Если описатель шрифта не подходит ни под один из
 | ||
| 	приведенных выше образцов, то возникает ошибка.</dd>
 | ||
|     </dl>
 | ||
| 
 | ||
|     <h2><a name="МЕТРИЧЕСКИЕ_ХАРАКТЕРИСТИКИ_ШРИФТОВ"></a>МЕТРИЧЕСКИЕ ХАРАКТЕРИСТИКИ ШРИФТОВ</h2>
 | ||
| 
 | ||
|     <p>Команда <strong>font metrics</strong> использует следующие
 | ||
|       параметры для запроса данных, определяемых при создании
 | ||
|       шрифта. Это характеристики шрифта в целом, а не отдельных его
 | ||
|       символов. В нижеследующих определениях "основа шрифта"
 | ||
|       это горизонтальная прямая, на которой располагается нижняя часть
 | ||
|       большинства букв, некоторые буквы, например, " g "
 | ||
|       опускаются ниже основы.</p>
 | ||
| 
 | ||
|     <dl>
 | ||
|       <dt>-ascent</dt>
 | ||
| 
 | ||
|       <dd>Высота в пикселах самой высокой буквы шрифта над основой
 | ||
| 	плюс дополнительное пустое пространство, добавленное
 | ||
| 	разработчиком шрифта</dd>
 | ||
| 
 | ||
|       <dt>-descent</dt>
 | ||
| 
 | ||
|       <dd>Наибольшая протяженность в пикселях буквы шрифта под основой
 | ||
| 	плюс дополнительное пустое пространство, добавленное
 | ||
| 	разработчиком шрифта.</dd>
 | ||
| 
 | ||
|       <dt>-linespace</dt>
 | ||
| 
 | ||
|       <dd>Возвращает расстояние между строками текста, использующими
 | ||
| 	один и тот же шрифт, необходимое для того, чтобы символы
 | ||
| 	верхней строки не перекрывались с символами нижней. Обычно это
 | ||
| 	сумма зазора под верхней и над нижней строкой.</dd>
 | ||
| 
 | ||
|       <dt>-fixed</dt>
 | ||
| 
 | ||
|       <dd>Возвращает булевское значение, равное " 1 " для
 | ||
| 	шрифта постоянной ширины, в котором ширина всех обычных
 | ||
| 	символов одинакова, и равное " 0 " для
 | ||
| 	пропорционального шрифта, разные буквы которого имеют
 | ||
| 	различную ширину. Ширина управляющих символов, символов
 | ||
| 	табуляции и других непечатаемых символов при вычислении этого
 | ||
| 	значения не учитывается.</dd>
 | ||
|     </dl>
 | ||
| 
 | ||
|     <h2><a name="ПАРАМЕТРЫ_ШРИФТОВ"></a>ПАРАМЕТРЫ ШРИФТОВ</h2>
 | ||
| 
 | ||
|     <p>Следующие параметры поддерживаются на всех платформах и
 | ||
|       используются для конструирования поименованного шрифта или при
 | ||
|       задании шрифта с помощью стиля [5] выше:</p>
 | ||
| 
 | ||
|     <dl>
 | ||
| 
 | ||
|       <dt><strong>-family</strong> <em>имя</em></dt>
 | ||
| 
 | ||
|       <dd>Имя семейства шрифтов (нечувствительное к регистру). Tk
 | ||
| 	обязательно поддерживает семейства с именами
 | ||
| 	<strong>Courier</strong> (моноширинный шрифт "пишущей
 | ||
| 	машинки"), <strong>Times</strong> ("газетный"
 | ||
| 	шрифт с засечками) и <strong>Helvetica</strong> (рубленый
 | ||
| 	"европейский" шрифт). При использовании одного из
 | ||
| 	этих семейств шрифтов оно автоматически заменяется наиболее
 | ||
| 	подходящим "родным" шрифтом.  Имя семейства также
 | ||
| 	может быть именем одного из "родных" шрифтов,
 | ||
| 	зависящих от платформы; в этом случае семейство будет работать
 | ||
| 	на своей платформе, как положено, однако при переходе к другой
 | ||
| 	платформе могут возникнуть неприятности. Если имя семейства не
 | ||
| 	задано или не опознано, то будет выбран шрифт по умолчанию для
 | ||
| 	данной платформы.</dd>
 | ||
| 
 | ||
|       <dt><strong>-size</strong> <em>размер</em></dt>
 | ||
| 
 | ||
|       <dd>Требуемый кегль (размер) шрифта. Если значением аргумента
 | ||
| 	является положительное число, то оно интерпретируется как
 | ||
| 	размер символов в точках. Если значение отрицательно, то его
 | ||
| 	абсолютная величина интерпретируется как размер в
 | ||
| 	пикселах. Если шрифт указанного кегля нельзя вывести, то
 | ||
| 	берется ближайший доступный размер. Если размер не задан или
 | ||
| 	его значение равно нулю, то будет выбран размер по умолчанию
 | ||
| 	для данной платформы. Как правило, размер шрифта следует
 | ||
| 	указывать в точках; тогда приложение будет иметь один и тот же
 | ||
| 	размер на экране даже на мониторах различного разрешения или
 | ||
| 	при переносе скриптов на другие платформы. Однако использование
 | ||
| 	пикселей оправдано, например, в ситуациях, когда строчка
 | ||
| 	текста должна соответствовать по длине двуцветному изображению
 | ||
| 	фиксированного размера. Коэффициент перехода от точек к
 | ||
| 	пикселам и обратно устанавливается при запуске приложения на
 | ||
| 	основе параметров используемого монитора, однако его можно
 | ||
| 	изменить при помощи команды <strong>Tk scaling</strong>.</dd>
 | ||
| 
 | ||
|       <dt><strong>-weight</strong> <em>вес</em></dt>
 | ||
| 
 | ||
|       <dd>Условная толщина символов в шрифте. Значение
 | ||
| 	<strong>normal</strong> задает шрифт нормальной толщины,
 | ||
| 	<strong>bold жирный шрифт</strong>. Выбирается доступная
 | ||
| 	толщина, ближайшая к заданной. По умолчанию параметр имеет
 | ||
| 	значение <strong>normal</strong>.</dd>
 | ||
| 
 | ||
|       <dt><strong>-slant</strong> <em>наклон</em></dt>
 | ||
| 
 | ||
|       <dd>Величина, на которую символы шрифта отклоняются по
 | ||
| 	вертикали.  Допустимы значения <strong>roman</strong> и
 | ||
| 	<strong>italic</strong>. Шрифт с наклоном
 | ||
| 	<strong>roman</strong> это обычный прямой шрифт, а символы
 | ||
| 	шрифта с наклоном <strong>italic</strong> отклоняются от
 | ||
| 	вертикали на несколько градусов. Выбирается доступный наклон,
 | ||
| 	ближайший к заданному. По умолчанию параметр имеет значение
 | ||
| 	<strong>roman</strong>.</dd>
 | ||
| 
 | ||
|       <dt><strong>-underline</strong> <em>булевское</em></dt>
 | ||
| 
 | ||
|       <dd>Значением параметра является булевский флажок, указывающий,
 | ||
| 	следует ли подчеркивать символы шрифта. По умолчанию параметр
 | ||
| 	имеет значение ложь.</dd>
 | ||
| 
 | ||
|       <dt><strong>-overstrike</strong> <em>булевское</em></dt>
 | ||
| 
 | ||
|       <dd>Значением параметра является булевский флажок, указывающий,
 | ||
| 	следует ли перечеркивать символы шрифта (горизонтальной прямой
 | ||
| 	посреди символа). По умолчанию параметр имеет значение
 | ||
| 	ложь.</dd>
 | ||
|     </dl>
 | ||
| 
 | ||
|     <h2><a name="ОСОБЕННОСТИ_РЕАЛИЗАЦИИ_НА_РАЗЛИЧНЫХ_ПЛАТФОРМАХ"></a>ОСОБЕННОСТИ РЕАЛИЗАЦИИ НА РАЗЛИЧНЫХ ПЛАТФОРМАХ</h2>
 | ||
| 
 | ||
|     <p>Различные платформы поддерживают следующие поименованные
 | ||
|       системные шрифты:</p>
 | ||
| 
 | ||
|     <dl>
 | ||
|       <dt>X-Windows:</dt>
 | ||
| 
 | ||
|       <dd>Все допустимые имена X шрифтов, включая перечисляемые
 | ||
| 	выводятся командой <strong>xlsfonts(1)</strong>.</dd>
 | ||
| 
 | ||
|       <dt>MS Windows:</dt>
 | ||
| 
 | ||
|       <dd>system, ansi, device, systemfixed, ansifixed, oemfixed</dd>
 | ||
| 
 | ||
|       <dt>Apple Macintosh</dt>
 | ||
| 
 | ||
|       <dd>system, application</dd>
 | ||
|     </dl>
 | ||
|     
 | ||
|     <p>См. также <a
 | ||
| 	href="options.html"><strong>options</strong></a>.</p>
 | ||
|     
 | ||
|   </body>
 | ||
| </html>
 | 
