Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.07.12;
Скачать: [xml.tar.bz2];

Вниз

Объясните пож про сглаживание?   Найти похожие ветки 

 
Nil   (2009-05-14 15:42) [0]

1. Как сглаживание относится к выводу текста на канву? Почему при включении в винде эффекта сглаживания, эффект проявляется не только на стандартных лэйблах и прочих текстовых компонентах, но и на тексте который я рисую на канве стринггрида?

2. Как бы так научиться рисовать сглаженным шрифтом на канве, если в системе сглаживание выключено?


 
Сергей М. ©   (2009-05-14 16:24) [1]


> 1. Как сглаживание относится к выводу текста на канву?


Прямым образом - вывод текста на канву сводится к выводу оного на ассоциированный с канвой DC средствами штатных WinAPI-функций a-ля TextOut, работа которых зависит от состояния включенности системного сглаживающего фильтра.

Вот обсуждение похожей задачи

http://forum.vingrad.ru/topic-223272.html


 
Nil   (2009-05-19 14:16) [2]

спасибо!! много интересного узнал

для канваса так:
Fnt: TLogFont;
....
     Font.Name := "Arial";
     Font.Size := 10;
     Font.Style := [fsBold];
     Font.Color := clBlack;
     Brush.Color:=$00f3ede8;

     GetObject(Font.Handle, SizeOf(TLogFont), @Fnt);
     Fnt.lfQuality := 5;
     Font.Handle := CreateFontIndirect(Fnt);

     TextOut(Rect.Left + 46, Rect.Top+7, St);

с канвасом раборался, а вот с TLabel что-то не никак.. я думаю проблема в том что устанавливать ClearType качество при рисовании на канвасе приходится прямо перед TextOut. Любое изменение свойств шрифта через Canvas.Font... сразу сбрасывает lfQuality..
может кто решал проблему? как быть с TLabel если нужен ClearType на нём?..


 
Amoeba ©   (2009-05-19 15:44) [3]


> как быть с TLabel если нужен ClearType на нём?..

Элементарно! Написать свой компонент - наследник от TLabel и перекрыть в нем метод выполняющий отрисовку.


 
Nil   (2009-05-19 16:30) [4]

очень не хочется лишние сторонние компоненты за собой в проект тащить.. может есть какие-нибудь такие же волшебные 3 строчки для tlabel, подобно примеру выше для канвы?


 
Amoeba ©   (2009-05-19 17:14) [5]


> может есть какие-нибудь такие же волшебные 3 строчки для
> tlabel

Чудес не бывает.


 
Amoeba ©   (2009-05-19 17:50) [6]

Решение задачи "малой кровью":
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=1367
Но свой компонент писать все равно придется.


 
Nil   (2009-05-19 21:58) [7]

то что надо! спасибо, буду пробовать..



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2009.07.12;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.004 c
15-1241728204
Юрий
2009-05-08 00:30
2009.07.12
С днем рождения ! 8 мая 2009 пятница


15-1241988585
Petr V. Abramov
2009-05-11 00:49
2009.07.12
Лето неотвратимо, как оздоровление мировой экономики :)


15-1241861566
xayam
2009-05-09 13:32
2009.07.12
ExtJS и форматированный вывод


15-1241762640
мс_анатолий
2009-05-08 10:04
2009.07.12
случайный ряд


15-1242160207
Юрий
2009-05-13 00:30
2009.07.12
С днем рождения ! 13 мая 2009 среда





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский