Jump to content

Формат распределения растровых изображений глифа

Формат распределения растровых изображений глифа
Расширение имени файла
.bdf
Тип интернет-СМИ
приложение /x-font-bdf [1]
Разработано Adobe Inc.
Первоначальный выпуск 1987 год ; 37 лет назад ( 1987 )
Последний выпуск
2.2
22 марта 1993 г .; 31 год назад ( 1993-03-22 )
Тип формата Формат растрового шрифта
Открытый формат ? да
Веб-сайт Спецификация формата распространения растровых изображений Adobe Glyph (BDF), версия 2.2

Формат распространения растровых изображений Glyph (BDF) от Adobe — это формат файлов для хранения растровых шрифтов . Содержимое имеет форму текстового файла, предназначенного для чтения человеком и компьютером. BDF обычно используется в средах Unix X Window . Он в значительной степени был заменен форматом шрифтов PCF , который несколько более эффективен, а также масштабируемыми шрифтами, такими как шрифты OpenType и TrueType .

В 1988 году X Consortium принял BDF 2.1 в качестве стандарта для экранных шрифтов X Window. [2] но X Windows в значительной степени перешла на другие стандарты шрифтов, такие как PCF , Opentype и Truetype .

В версии 2.2 добавлена ​​поддержка незападного письма. Например, глифы в определении шрифта BDF 2.2 могут определять рендеринг сверху вниз, а не просто слева направо.

Файл шрифта BDF содержит три раздела:

  1. глобальный раздел, который применяется ко всем глифам шрифта;
  2. раздел с отдельной записью для каждого глифа; и
  3. тот ENDFONT заявление.

Это пример шрифта, содержащего один глиф для заглавной буквы ASCII. Этот глиф взят из GNU Unifont .

STARTFONT 2.1 
FONT -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1
SIZE 16 75 75
FONTBOUNDINGBOX 16 16 0 -2
STARTPROPERTIES 2
FONT_ASCENT 14
FONT_DESCENT 2
ENDPROPERTIES
CHARS 1
STARTCHAR U+0041
ENCODING 65
SWIDTH 500 0
DWIDTH 8 0
BBX 8 16 0 -2
BITMAP
00
00
00
00
18
24
24
42
42
7E
42
42
42
42
00
00
ENDCHAR
ENDFONT

В приведенном выше примере глобальные объявления начинаются с STARTFONT линию и закончить CHARS линия.

STARTFONT 2.1 определяет версию этого файла BDF как версию 2.1.

FONT -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 определяет семейство шрифтов и названия шрифтов как логическое описание шрифта X.

SIZE 16 75 75 определяет это как шрифт размером 16 пунктов с разрешением по оси X 75 точек на дюйм (dpi) и разрешением по оси Y 75 точек на дюйм. Это норма для X Window.

FONTBOUNDINGBOX 16 16 0 -2 определяет ограничивающую рамку для шрифта шириной 16 пикселей и высотой 16 пикселей, причем нижний левый угол начинается с x = 0 и y = -2 . Обратите внимание: хотя ограничивающая рамка определена как ячейка размером 16 на 16, ее можно переопределить для отдельных глифов. Например, глиф «А» имеет ширину всего 8 пикселей.

STARTPROPERTIES 2 заявляет, что последуют два специальных свойства. STARTPROPERTIES является необязательным в спецификации BDF. X Window позволяет использовать свойства FONT_ASCENT и FONT_DESCENT чтобы показать высоту выше и ниже базовой линии соответственно для всех глифов. FONT_ASCENT 14 заявляет, что 14 из 16 пикселей по высоте находятся над базовой линией. FONT_DESCENT 2 заявляет, что 2 из 16 пикселей по высоте находятся ниже базовой линии. ENDPROPERTIES появляется в конце STARTPROPERTIES раздел.

CHARS 1 заявляет, что последует один символ. Хотя Adobe теперь называет этот формат файла Glyph BDF, они сохранили ключевое слово CHARS в окончательной версии спецификации.

Строки, начинающиеся со слова COMMENT можно вставить в файл BDF. Все, что следует за COMMENT Ключевое слово в строке игнорируется.

Следуя приведенным выше глобальным объявлениям, следующие записи могут повторяться для каждого глифа.

STARTCHAR U+0041 указывает начало символа в версии 2.1 и более ранних версий или глифа в версии 2.2. Строковое имя этого конкретного символа: U+0041, выражающий в соглашении Unicode шестнадцатеричный код 41 (десятичный 65, символ ASCII «A»). В версии 2.1 и более ранних версиях строка имени персонажа была ограничена 14 символами. В версии 2.2 строка имени глифа может содержать до 65 535 символов.

ENCODING 65 объявляет десятичную кодовую точку для этого глифа в шрифте.

SWIDTH 500 0 объявляет масштабируемую ширину 500 по оси X и 0 (по умолчанию) по оси Y. Это приведет к смещению оси X к следующему глифу, но смещению по оси Y к следующему глифу не будет (т. е. глифы будут располагаться прямо поперек линии). Масштабируемая ширина в 1000 раз превышает фактический размер символа — та же единица измерения, которая используется в файле Adobe Font Metric (AFM). Количество пикселей рассчитывается как Пиксели = Масштабируемая ширина / 1000 * Разрешение / 72 , где масштабируемая ширина в этом примере равна 500, а разрешение для этого шрифта — 75 точек на дюйм. Поскольку 75 примерно равно 72, количество пикселей равно полной ширине глифа (определяемой глобально как 16 пикселей), умноженной на 500/1000 или, другими словами , . ширина этого глифа равна 8 пикселям

DWIDTH 8 0 объявляет ширину устройства глифа. В этом случае после визуализации глифа начало следующего глифа смещается на 8 пикселей по оси X и на 0 пикселей по оси Y от текущего начала координат глифа. Обратите внимание, что ширина устройства не обязательно равна ширине глифа. Это просто смещение по оси X для перемещения текущей точки к началу следующего глифа.

Масштабируемая ширина используется для расчета ширины глифа с высоким разрешением на принтере, тогда как ширина устройства используется для расчета ширины глифа на устройстве отображения. Таким образом, масштабируемая ширина указывается с большей точностью, чем ширина устройства.

BBX 8 16 0 -2 объявляет ограничивающую рамку шириной 8 пикселей и высотой 16 пикселей. Нижний левый угол символа смещен на 0 пикселей по оси X и на -2 пикселя по оси Y.

BITMAP начинает растровое изображение текущего глифа. За этой линией должна следовать одна линия на пиксель по оси Y. В этом примере высота глифа составляет 16 пикселей, поэтому за ним следует 16 строк. Каждая строка содержит шестнадцатеричное представление пикселей подряд. Бит «1» указывает визуализированный пиксель. Каждая строка округляется до границы 8 бит (один байт) и дополняется нулями справа. В этом примере ширина глифа составляет ровно 8 пикселей, поэтому он занимает ровно 8 бит (один байт) на строку, так что заполнения нет. Самый старший бит строки растровых данных представляет собой самый левый пиксель.

ENDCHAR завершает текущий глиф.

Декларации STARTCHAR через ENDCHAR повторяются для каждого глифа шрифта.

ENDFONT отображается как последняя строка в файле после перечисления всех глифов шрифта.

Расширения версии 2.2

[ редактировать ]

Версия 2.2 спецификации BDF добавляет поддержку незападных шрифтов. Эти дополнения позволяют перемещать начало координат положительным или отрицательным перемещением по осям X и Y. Это обеспечивает не только направление письма справа налево, но даже сверху вниз (например, для китайского языка). Следующие значения обеспечивают поддержку многонациональных шрифтов:

METRICSET устанавливается в 0 для направления письма 0, 1 для направления письма 1 или 2 (в начальной глобальной области) для обоих направлений письма в одном и том же шрифте. Традиционные западные сценарии используют письмо слева направо. METRICSET 0.

SWIDTH1 и DWIDTH1 имеют те же параметры, что и SWIDTH и DWIDTH, соответственно. DWIDTH1 должен присутствовать на METRICSET 1 глиф. Его смещения могут быть положительными или отрицательными.

VVECTOR определяет смещение по оси X и смещение по оси Y для перехода от глифа режима 0 к глифу режима 1. Противоположное смещение применяется во время перехода глифа из режима 1 в режим 0.

Эта схема легко совмещает два направления письма. Исторически сложилось так, что шрифты имели 128 или 256 кодовых точек. Сегодня Unicode допускает более миллиона кодовых точек. Шрифты предположительно могут содержать тысячи глифов, некоторые из которых следует писать слева направо, некоторые — справа налево, а некоторые — сверху вниз. Такое разнонаправленное письмо требует творческого использования DWIDTH1 и SWIDTH1 для каждого глифа.

Помимо ключевых слов, добавленных для международной поддержки, в версии 2.2 добавлена CONTENTVERSION декларация. За этим ключевым словом следует целое число, обозначающее номер версии шрифта.

Для получения более подробной информации обратитесь к спецификации версии 2.2.

Свойства X-окна

[ редактировать ]

Утилиты шрифтов X Window поддерживают несколько свойств, которые можно указать в STARTPROPERTIES раздел файла BDF. [3] Общий файл BDF имеет кодировку ASCII . Свойства X Window задаются с использованием кодировки ISO 8859-1 , которая является расширением ASCII. Эти свойства включают в себя:

  • CAP_HEIGHT (целое число) Высота над базовой линией заглавной буквы (см. Высота прописной буквы ).
  • COPYRIGHT (нить) [4] Заявление об авторских правах.
  • DEFAULT_CHAR (целое число без знака) Символ (глиф) по умолчанию, отображаемый для неопределенного глифа.
  • FACE_NAME (нить [4] ) Название начертания этого шрифта.
  • FONT (нить) [4] Имя шрифта в X Window.
  • FONT_ASCENT (целое число) Высота над базовой линией для расчета межстрочного интервала.
  • FONT_DESCENT (целое число) Нижний элемент ниже базовой линии для расчета межстрочного интервала.
  • FONT_VERSION (нить) [4] Версия шрифта.
  • FOUNDRY (нить) [4] Название литейного завода.
  • FAMILY_NAME (нить) [4] Название семейства шрифтов.
  • NOTICE (нить) [4] Общий комментарий.
  • POINT_SIZE (целое число) См. Точка (типографика) . Если это не указано отдельно, EMspace = round(POINT_SIZE/10), ENspace = round(POINT_SIZE/20) и THINspace = round(POINT_SIZE/30).
  • RESOLUTION_X (беззнаковое целое число)
  • RESOLUTION_Y (беззнаковое целое число)
  • SLANT (нить) [4] «R» — прямой, «I» — курсив, «O» — наклонный, «RI» — обратный курсив, «RO» — обратный наклонный, «OT» — другой, а число указывает на возможность полиморфного наклона.
  • WEIGHT_NAME (нить) [4] Начертание этого шрифта («Жирный» и «Нормальный» являются типичными, хотя установленного перечисления нет).
  • X_HEIGHT (целое число) Высота над базовой линией строчной буквы «x» (см. x-height ).

Примечания

[ редактировать ]
  1. ^ .bdf Тип MIME не зарегистрирован в IANA
  2. ^ «Система X Window, версия 11, выпуск 3» . Фонд X.Org . Октябрь 1988 года . Проверено 19 января 2016 г.
  3. ^ Флауэрс, Джим (1994) [1988]. «3.2 Свойства шрифта». X Соглашения об описании логических шрифтов (изд. версии 1.5). X Consortium, Inc. с. 13. Архивировано из оригинала 31 марта 2013 г. Проверено 8 января 2009 г.
  4. ^ Перейти обратно: а б с д и ж г час я ISO 8859-1 Строка символов .
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 5bd6761bad75ba013aca77bc073ffd5d__1697532300
URL1:https://arc.ask3.ru/arc/aa/5b/5d/5bd6761bad75ba013aca77bc073ffd5d.html
Заголовок, (Title) документа по адресу, URL1:
Glyph Bitmap Distribution Format - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)