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>
|