|
| БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО! |
|
|
Special Font Selection Considerations
Although most font selection operations involve the user, there are some instances where this is not true. For example, a developer may want to use a unique font in an application to draw text in a control window. To select an appropriate font, the application must be able to determine what fonts are available, create a logical font that describes one of these available fonts, and then select that font into the appropriate device context.
An application can enumerate the available fonts by using the EnumFontFamilies function. This can be useful when an application must determine which fonts are available from a given family. Once an application has enumerated the available fonts and located an appropriate match, it should use the values returned by the font enumeration function to initialize the members of a LOGFONT structure. Then it can call the CreateFontIndirect function, passing to it a pointer to the initialized LOGFONT structure. If the CreateFontIndirect function is successful, the application can then select the logical font by calling the SelectObject function.
When initializing the members of the LOGFONT structure, be sure to specify a specific character set in the lfCharSet member. This member is important in the font mapping process and the results will be inconsistent if this member is not initialized correctly. If you specify a typeface name in the lfFaceName member of the LOGFONT structure, make sure that the lfCharSet value matches the character set of the typeface specified in lfFaceName. For example, if you want to select a font such as "MS Mincho", lfCharSet must be set to the predefined value SHIFTJIS_CHARSET.
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
Специальные Шрифтовые Соображения Выбора
Хотя шрифтовые действия выбора включают потребителя, есть некоторые примеры где это - не истина. Например, разработчик может захотеться использовать уникальный шрифт в приложении, чтобы делать текстом в управляющем окне. Для того, чтобы выбираться подходящий шрифт, приложение должно быть способным определить, что какие шрифты доступны, создайте логический шрифт, который описывает один из этих доступных шрифтов, затем выберитесь этот шрифт в подходящий контекст устройства.
Приложение может перечислить доступные шрифты используя функцию EnumFontFamilies. Это может быть полезным когда приложение должно определить, что какие шрифты доступны из данного семейства. Как только приложение перечислило доступные шрифты и располагало подходящую спичку, оно должно использовать величины возвращанные шрифтовой функцией перечисления, чтобы инициализировать участников структуры LOGFONT. Затем это может назвать функцию CreateFontIndirect, проходящую этому указателя в инициализированную структуру LOGFONT. Если функция CreateFontIndirect имеет успех, приложение может тогда выберитесь логический шрифт вызывая функцию SelectObject.
Инициализируя участников структуры LOGFONT, не забудьте определять специфический набор символов на члене lfCharSet. Этот член важный в шрифте, отображающем процесс и результаты будут противоречивыми если этот член не инициализируется правильно. Если Вы определяете тип шрифта имени на члене lfFaceName структуры LOGFONT, убедитесь, что спички величины lfCharSet набор символов типа шрифта определялся в lfFaceName. Например, если Вы хотите выбрать шрифт как например, "МС Mincho", lfCharSet должен быть установлен во встроенную величину SHIFTJIS_CHARSET.
|
|
|
|
| |