Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Пример работы с базовыми шрифтами



Если Вам необходимо изменить шрифт на один из семи базовых (предопределенных) шрифтов, то используют функции GetStockObject и SelectObject. Пример88. Продемонстрировать работу с базовыми шрифтами. DimMyDCAsLong, S AsString, y AsIntegerDimFntAsLong, OldFntAsLong, FntName(10 To16)AsString SubPrintFont(ByValf AsInteger) Fnt= GetStockObject(f) OldFnt= SelectObject (MyDC, Fnt)S = FntName(f)Call TextOut (MyDC, 10, y, S, Len (S))у= y + 20S = "ABCDEFGabcdeg0123456789АБВГДЕЖабвгдеж"

CallTextOut(MyDC, 10, y, S, Len(S)) у= y + 20Call SelectObject(MyDC, OldFnt) EndSub PrivateSubCommand1_Click() у= 20'Начальное значение ординаты MyDC= GetDC (hWnd)ForK% = 10 To16IF K Mod2 = 1 ThenR= 1ElseR = 2EndIFCall

SetBkMode (MyDC, R)'Режим отображения прямоугольника

Call SetBkColor (MyDC, &H50FFF1 * K)

Цвет прямоугольника Call PrintFont(K) NextCall ReleaseDC(hWnd, MyDC) EndSubPrivateSubForm_Load() Caption="Пример использования базовых шрифтов"BackColor= &HFFFFFFFntName(10) = "Oem_Fixed_Font"FntName(11) = "Ansi_Fixed_Font"FntName(12) = "Ansi_Var_Font"FntName(13) = "System_Font"FntName(14) = "Device_Default_Font"FntName(15) = "Default_Pallete"FntName(16) = "System_Fixed_Font" EndSub


90. Создание логического шрифта функциями CreateFont, CreateFontIndirect.

Создать собственный логический шрифт, доступный системе, на основе контурного шрифта можно с помощью функций CreateFont и CreateFontIndirect. Обе они возвращают дескриптор шрифта, который следует связать с контекстом функцией SelectObject, а после вывода текстовой информации удалить его из памяти функцией DeleteObject. Функция CreateFont имеет 14 параметров, а функция CreateFontIndirect -один параметр типа LOGFONT с теми же 14-ю полями данных. TypeLOGFONT

lfHeightAsLong' Высота шрифта

lfWidthAsLong'Средняя ширина строчной буквы lfEscapementAsLong' Наклон строки или символа lfOrientationAsLong'Наклон символа lfWeightAsLong'Жирность шрифта lfItalicAsByte'Признак курсива

lfUnderlineAsByte'Признак подчеркивания lfStrikeOutAsByte'Признак перечеркивания lfCharSetAsByte'Набор символов lfOutPrecisionAsByte' Точность отображения lfClipPrecisionAsByte'Отсечение lfQualityAsByte'Качество прорисовки lfPitchAndFamilyAsByte'Семейство шрифта lfFaceName(1 To32) AsByte'Имя шрифта EndType Назначение полей(параметров) структуры следующее. lf Height—высота символов. Значение, большее0 (до16384), указывает на высоту шрифта в пикселях. Если же это значение равно0, то используется умалчиваемое значение. lfWidth—ширина символов. Для пропорциональных

шрифтов означает среднюю ширину строчных букв. Если параметр равен 0, ширина выбирается пропорционально высоте символа. lfEscapement—угол наклона базовой линии символов или строк к горизонтальной оси в десятых долях градуса. Положительный угол означает поворот базовой линии против часовой стрелки. lfOrientation—этот параметр зарезервирован. lfWeight-коэффициент, указывающий на жирность шрифта: FW_THIN =100 'Очень тонкий шрифт

FW_EXTRALIGHT = 200 'Очень светлый шрифт FW_LIGHT =300 'Светлый шрифт

FW_NORMAL = 400 'Нормальный шрифт FW_MEDIUM = 500 'Утолщенный шрифт FW_SEMIBOLD = 600 'Полужирный шрифт

FW_BOLD=700 'Жирный шрифт

FW_EXTRABOLD = 800 ' Усиленный шрифт FW_BLACK = 900 'Тяжелый шрифт

lfItalic-определяет наклонность символов, когда равно 1.

I/Underline-определяет подчеркнутость символов, когда равно1.

lfStrikeOut—определяет перечеркнутость, когда равно1.lfCharSet-определяет набор символов: ANSI_CharSet=0(Windows-кодировка, поддерживает кириллицу); Symbol_CharSet=2 иShiftJis_Char-Set=128 содержат греческий алфавит, спец символы и различные пиктограммы, не поддерживающие кириллицу.

lfOutPrecision—задает точность представления символов на физическом устройстве. Рекомендуемые значения: Out_Character_precis= 2,

Out_Default_precis= 0, Out_Device_precis= 5, Out_Outline_precis= 8, Out_Raster_precis= 6, Out_String_precis= 1, Out_Stroke_precis= 3, Out_TT_only_precis= 7, Out_TT_precis= 4.lfQuality-определяет качество прорисовки шрифта и может иметь одно из значений: Default_Quality=0,Draft_Quality=1,Proof_Quality=2 (поумолчанию). lfFaceName-задает имя шрифта. Например, «CourierNewСуг».lfPitchAndFamily—выбор семейства шрифта. Рекомендуемые значения: Default_Pitch=0 (по умолчанию), Fixed_Pitch=1(моноширинный), Variable_Pitch=2 (пропорциональный).Обычно в комплект русифицированных версий Windows входит более 30 контурных шрифтов(TrueType

шрифтов), поддерживающих кириллицу. Среди них основными в работе с документами являются три шрифта: CourierNewCyr, ArialCyr, TimesNewRomanCyr. Все контурные шрифты имеют по 4 начертания: обычный, наклонный, жирный, жирный наклонный. Шрифт ArialCyr -это пропорциональный шрифт без украшений, используемый в основном для заголовков, оглавлений документов. CourierNew -это моноширный шрифт, похожий на шрифт канцелярской пишущей машинки, используемый в оформлении таблиц. TimesNewRomanCyr -изящный в начертании шрифт, используемый при оформлении документов.





Дата публикования: 2014-12-28; Прочитано: 255 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...