Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как правильно выбирать шрифты для рисования...


max999 ©   (2006-04-18 10:36:00) 

...на (или по) DC?

на WM_PAINT пишу:

 FontNormal := CreateFont(-8, 0, 0, 0, FW_DONTCARE, 0, 0, 0, ANSI_CHARSET, OUT_TT_PRECIS, CLIP_DEFAULT_PRECIS, ANTIALIASED_QUALITY, FF_DONTCARE + DEFAULT_PITCH, DefFontName);
 FontBold := CreateFont(-8, 0, 0, 0, FW_BOLD, 0, 0, 0, ANSI_CHARSET, OUT_TT_PRECIS, CLIP_DEFAULT_PRECIS, ANTIALIASED_QUALITY, FF_DONTCARE + DEFAULT_PITCH, DefFontName);
 FontItalic := CreateFont(-8, 0, 0, 0, FW_DONTCARE, 1, 0, 0, ANSI_CHARSET, OUT_TT_PRECIS, CLIP_DEFAULT_PRECIS, ANTIALIASED_QUALITY, FF_DONTCARE + DEFAULT_PITCH, DefFontName);
 FontBoldItalic := CreateFont(-8, 0, 0, 0, FW_BOLD, 1, 0, 0, ANSI_CHARSET, OUT_TT_PRECIS, CLIP_DEFAULT_PRECIS, ANTIALIASED_QUALITY, FF_DONTCARE + DEFAULT_PITCH, DefFontName);

// само рисование -
 SelectObject(hdc, FontNormal);
 TextOut(hdc, 0, 0, "22", 2);
 DeleteObject(FontNormal);
 
 SelectObject(hdc, FontBold);
 TextOut(hdc, 0, 20, "22", 2);
 DeleteObject(FontBold);

 SelectObject(hdc, FontNormal);
 TextOut(hdc, 0, 40, "22", 2);
 DeleteObject(FontNormal);

По идее вначале должен рисоваться нормальный текст, потом полужирный, потом снова нормальный... Но последние "двойки" рисуються полужирным...


Zz_   (2006-04-18 13:06:00) [1]

А зачем на WM_PAINT писать

CreateFont +  DeleteObject

Не лучше ли один раз CreateFont и один раз DeleteObject
в соответствующих местах, но никак не на WM_PAINT ?


max999   (2006-04-18 11:54:00) [2]

Уже сам разобрался :) Но все равно спасибо...


MBo   (2006-04-18 11:49:00) [3]

> DeleteObject(FontNormal);
Все, копец нормальному...


Наверх

Титульная страница Поиск, карта сайта Написать письмо