Метрики фізичного шрифту

Відлік всіх розмірів виконується від базової лінії шрифту На ній знаходиться нижня межа гліфів більшості великих літер Висота шрифту tmHeight складається з надрядкового інтервалу і підрядкового інтервалу Надрядковий інтервал tmAscent – це відстань від базової лінії до верхньої межі осередку символу Під міжрядковий інтервал tmDescent – це відстань від базової лінії до нижньої межі осередку символу Внутрішній зазор tmlntemalLeading визначає простір для розміщення діакритичних знаків Зовнішній зазор tmExtemalLeading визначає мінімальний інтервал між сусідніми рядками для многострочного тексту

У поліграфії розмір шрифту вимірюється в пунктах Один пункт дорівнює 0,01389 дюйма (1/71, 99424) У компютерній верстці пункт округлюється до 1/72 дюйма Ще один друкарський термін «кегль» визначається як різниця висоти шрифту і внутрішнього зазору

При виведенні на екран тексту враховуються характеристики (метрики) шрифту, описувані структурою TEXTMETRIC, в якій зазначено 20 параметрів Отримати дані з цієї структури можна функцією GetTextMetrics() Возвращаемая функцією інформація розміщується в структурі типу TEXTMETRIC:

typedef struct tagTEXTMETRIC {

LONG tmHeight / / Висота символів

LONG tmAscent / / Надрядковий інтервал, тобто частину висоти / / букв від базової лінії з урахуванням таких елементів, як дві точки в / / букві Е

LONG tmDescent / / Підрядковий інтервал, тобто частину висоти / / букв нижче базової лінії

LONG tmlntemalLeading / / Внутрішній зазор, тобто висота таких / / виступаючих елементів, як дві точки в букві Е. Може бути / / дорівнює нулю

LONG tmExtemalLeading / / Міжрядковий інтервал

LONG tmAveCharWidth / / Середня ширина малих літер, / / ​​дорівнює ширині латинської букви х

LONG tmMaxCharWidth / / Максимальна ширина символів

LONG tmWeight / / Жирність (насиченість) шрифту, може / / перебувати в межах від 0 до 1000, 400 для нормального / / накреслення шрифту, або 700 для напівжирного

LONG tmOverhang / / Величина, на яку збільшується / / ширина символів для похилих або жирних шрифтів, / / ​​отримуються з нормального шрифту Шрифти TrueType зазвичай / / не використовують це поле, так як в них для кожного накреслення / / створюється свій шрифт

LONG tmDigitizedAspectX / / Дозвіл пристрої / / відображення по горизонталі

LONG tmDigitizedAspectY / / Дозвіл пристрою

/ / Відображення по вертикалі

TCHAR tmFirstChar / / Код першого символу, для якого в / / шрифті є гліф

TCHAR tmLastChar / / Код останнього символу, для якого в / / шрифті є гліф

TCHAR tmDefaultChar / / Символ для заміни символів, що не / / мають гліфа, зазвичай це контурний прямокутник

TCHAR tmBreakChar / / Символ для вставки в проміжки при / / вирівнюванні тексту, зазвичай це пробіл

BYTE tmltalic / / Ознака схильності шрифту BYTE tmUnderlined / / Ознака подчеркнутости шрифту BYTE tmStrackOut / / Ознака перекреслене ™ шрифту BYTE tmPitchAndFamily / / Чотири молодших біта вказують на крок і технологію шрифту (моноширинний або пропорційний-біт 0, векторний шрифт біт 2, шрифт TrueType біт 3, шрифт пристрої біт 4) Чотири старших біта вказують сімейство шрифту (наприклад, Roman, Modern, Swiss)

BYTE   tmCharSet / / Код набору символів (ANSICHARSET, SYMBOLCHARSET, RUSSIANCHARSET і тд) }TEXTMETRIC

Джерело: Сучкова, ЛІ Win32 API: основи програмування: навчальний посібник / ЛІ Сучкова АлтГТУ ім ШІ Ползунова -Барнаул, АлтГТУ, 2010 138 с, іл

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*