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

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

TBitmap и StretchBlt [D7, WinXP]


VasRoG ©   (2005-11-22 01:26:00) 

Имеется картинка.  Из нее нужно вырезать некоторый кусок,  затем увеличить/уменьшить в некоторое число раз.
Создаю битмап,  загружаю в него картинку и затем для вырезания/увеличения использую StretchBlt.  Результат помещаю в еще один битмап.  Вопрос вот в чем:
почему при использовании ф-ции StretchBlt получается изображение как будто наложенное на бумагу в клеточку.  Т.е. все изображение поделено на мелкие квадратики черными линиями.  Как сие убрать?  Или может лучше использовать другую функцию?


VasRoG   (2005-11-23 16:18:00) [1]

Sapersky
Eraser

Да уж,  несравнимо лучше.  Спасибо.


Eraser   (2005-11-23 14:54:00) [2]


> VasRoG   (22.11.05 01:26)

           SetStretchBltMode(Canvas.Handle, HALFTONE);
         // The docs say that you should call SetBrushOrgEx after SetStretchBltMode,
         // but not what the arguments should be.
           SetBrushOrgEx(Canvas.Handle, 0,0, nil);
           StretchBlt(...


но работать будет только на 2000 и выше.


Sapersky   (2005-11-23 11:09:00) [3]

HALFTONE даёт лучшее качество.


VasRoG   (2005-11-22 22:37:00) [4]

MBo

Спасибо,  ColorOnColor действительно помог.  Хотя качество очень так себе.

Separator

Спасибо,  посмотрю.


Separator   (2005-11-22 10:31:00) [5]

StretchBlt - это грубое растягивание, лучше посмотри какие-нибудь методы по обработке картинок
скачай у меня http://Sergey-Vilgelm.narod.ru/source/access.rar

обрати внимание на resample.pas


MBo   (2005-11-22 07:24:00) [6]

>Т.е. все изображение поделено на мелкие квадратики черными линиями.

Ни разу такого не видел...

На всякий случай - посмотри SetStretchBltMode


Наверх

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