ИНФОРМАЦИЯ: Шрифт показатели и използването на отрицателна lfHeight

Отказ от отговорност за оттеглено съдържание на БЗ

Тази статия е написана за продукти, за които Microsoft вече не предлага поддръжка. Ето защо тази статия се предлага „както е“ и вече няма да бъде актуализирана.

Резюме

Следните илюстрации показват най-често използваните шрифтове показатели, включително височината, която е избрана с отрицателни стойности на всяка илюстрация е последвано от бележки, описващи показатели.
 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

O O
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

/\
/ \
/ \
_ _ _ _ _ _ _ _ _ /______\ _ _ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/ \ / \|
/ \ | |
_ _ _ _ _ _ _ _ /_ _ _ _ _ _ \ _ \___/| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
|
|
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\___/_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
|
|- External Leading
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _|_ _ _ _ _ _ _ _ _ _
|
O O |- Internal Leading
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _|_ _ _ _ _ _ _ _ _ _
| /\
| / \
| / \
| /______\ _ _ _ ___ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Char Height -| / \ / \|
| / \ | |
| /_ _ _ _ _ _ \ _ \___/| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
| |
| |
_ _ _ _ _ _ _|_ _ _ _ _ _ _ _ _ _\___/_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

| |
| O O |
| |
| /\ |
| / \ |
| / \ |- Ascent
Cell Height -| /______\ ___ |
| / \ / \| |
| / \ | | |
| /_ _ _ _ _ _ \ _ \___/| _ _ _ _ _ _ _ _ _|_ _ _ _ _ _ _ _
| | |
| | |- Descent
_ _ _ _ _ _ _|_ _ _ _ _ _ _ _ _ _\___/_ _ _ _ _ _ _ _ _ _|_ _ _ _ _ _ _ _

Височина на клетка

Това е избран в положителен lfHeight в LOGFONT височината. Това е височината на растерни шрифтове за растерни шрифтове. Той се връща като tmHeight в структурата на TEXTMETRIC от GetTextMetrics().

Височината (известна още като ги)

Това е избран в отрицателна lfHeight в LOGFONT височината. (Тоест mapper ще се опита да съответства на шрифта, чиито височината съвпада абсолютната височина на искания.)


Забележка: по дефиниция, ги е равна на клетка височината минус вътрешните води. Ги определя размера на шрифта. В режим на съпоставяне MM_TEXT ги е свързан с размера по следния начин:

   Em=dpiY*point_size/72;  // where dpiY is dots per inch in Y direction
DpiY на шрифта е равна на tmDigitizedAspectY в структурата на TEXTMETRICS .

Вътрешна водещи

Това се връща като tmInternalLeading в структурата на TEXTMETRIC от GetTextMetrics() и често, но не е задължително, описва колко място е оставен в растерни шрифтове за диакритичен знаци (Акценти).

Външни водещи

Това се връща като tmExternalLeading в структурата на TEXTMETRIC от GetTextMetrics() и описва колко пространство на шрифта дизайнер очаква приложението да оставите между редовете на шрифта. Тя не е включена в растерен формат и не се променя от TextOut()/ExtTextOut(), дори в непрозрачни режим. При извеждане на няколко реда текст, линии трябва да бъдат разделени (tmHeight + tmExternalLeading).

 Character Width                       Character Width
| |
|-------------| |-------------|
| | / / |
| | / / |
| | / / |
| | / / |
|----------| /----------/ |
| | / / |
| | / / |
| | / / |
| | / / |
|________|
|_____________| |_____________| |
| | Overhang
Character width Character width
(including white space) (including white space)
Overhang = 0 Overhang > 0

Надвес

tmOverhang указва на низ допълнителни ширина, която може да се добави някои синтезирани шрифтове. При синтезирането някои атрибути, като например получер или курсивен шрифт, GDI или устройство трябва да добавите ширина низ от двете на символи и основа на низ. Например GDI синтезира embolding чрез разширяване intercharacter разредка и overstriking с изместване и italicizes шрифт чрез изопачаване низ.


И в двата случая има надвисване последните основни низ. За получер низове е разстоянието от което се неутрализира overstrike. За курсив низове е началото на шрифта е наклонен миналото дъното на шрифта. tmOverhang позволява приложението да определи размера на ширината на знаци, върната от GetTextExtent() обаждане на един знак е ширината на действителния характер и размера на низ допълнителни ширина. Действителната ширина е степен минус надвес. С други думи tmOverhang е разликата между ширината на един знак, когато се извежда поотделно срещу ширина когато е във вътрешността на низ.


За повече информация потърсете следните теми в препратката Софтуерен развоен пакет за Windows:


  • CreateFont() (в том 1 на препратката към версия 3.0)
  • TEXTMETRIC (в том 2 от препратката към версия 3.0)
Свойства

ИД на статията: 32667 – Последен преглед: 16.01.2017 г. – Редакция: 2

Обратна връзка