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

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

Bitmap из метафайла [D7, WinXP]


Ludmila ©   (2006-11-15 12:22:00) 

Люди, подскажите пожалуйста, как выковырять bitmap-ки из большого метафайла и сохранить их на диск. Метафайл покомандно разбирать умею, но именно bitmap корректно вытащить не могу.


Ludmila   (2006-11-15 14:04:00) [1]

Спасибо, поняла :)


MBo   (2006-11-15 13:51:00) [2]

Это проще всего. Можно, конечно, создать TBitmap, скопировать туда данные (SetDiBits, например, или в Graphics подсмотреть), но это гораздо длиннее.
Кстати, мне приходилось подправлять размеры заголовка и поле biCompression InfoHeader


Ludmila   (2006-11-15 13:37:00) [3]

Это что-ж, руками через WriteFile записывать сначала BitmapfileHeader, потом заголовок и цветовые данные? Некрасиво как-то...


MBo   (2006-11-15 13:31:00) [4]

При обработке записи EMR_STRETCHBLT (может, и EMR_BitBlt приходит, не проверял) в структуре PEMRStretchBlt содержатся смещения и размеры заголовка и цветовых данных битмапа. Вот это и нужно "выковырять" - можно сразу в файл, добавив BitmapfileHeader.


Наверх

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