![]() |
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]() ![]() ![]() |
|
neosapient |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 672 Регистрация: 16.8.2006 Репутация: 3 Всего: 4 |
Здравствуйте.
На диске есть рисунок. Я его могу загрузить целиком, с помощью LoadBitmap или LoadImage. Но что если я хочу загрузить лишь часть рисунка, скажем третью четверть или квадратик с координатами от (10,10) до (20,20). Я конечно могу, скопировать весь рисунок в память, затем вырезать из него нужный мне кусок. Но нет ли уже готовой API функции, чтоб указал ей путь к файлу и передал координаты вырезаемого куска картинки (либо верхний левый угол, и длину и ширину). Дополнительный вопрос, как можно, зная путь к картинке на диске, определить длину и ширину всей картинки, без предварительной загрузки на диск. Подразумивается, в лучшем случает работа со всеми форматами, но минимум с *.bmp Зарание спасибо. |
|||
|
||||
maxim1000 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: 2 Всего: 110 |
не припоминаю, чтобы слышал о такой API-функции
для bmp размеры можно узнать, прочитав небольшую часть файла в начале (BITMAPFILEHEADER, BITMAPINFOHEADER -> MSDN) в принципе, можно и сами пикселы читать вручную только те, которые надо но придётся самому реализовывать чтение bmp занятие это несложное, но если задаться целью чего-то универсального, то разнообразных форматов bmp немало (можно поискать на форуме - была целая статья на эту тему) -------------------- qqq |
|||
|
||||
neosapient |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 672 Регистрация: 16.8.2006 Репутация: 3 Всего: 4 |
Спасибо за ответ на вторую часть.
Но хочется услышать про
Самому реализовывать как то не хочется. Это сообщение отредактировал(а) neosapient - 3.12.2006, 21:25 |
|||
|
||||
witex |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 224 Регистрация: 16.10.2006 Где: Эстония Репутация: 1 Всего: 4 |
Cropping an Image есть такая функци. Посмотри в МСДН. Мож поможет!
--------------------
Я не волшебник, я только учусь."Шлёпни в Гугл" - Афтор Былов Ю.М. |
|||
|
||||
anwe |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 748 Регистрация: 2.9.2006 Репутация: 1 Всего: 23 |
||||
|
||||
neosapient |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 672 Регистрация: 16.8.2006 Репутация: 3 Всего: 4 |
Конкретнее функцию можешь назвать?
Я понимаю, что можно... Ищю замену, чтоб много раз не грузить в память. |
||||||
|
|||||||
Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 33 Всего: 183 |
Даже если бы такая функция и была, она сначала загружала бы растр целиком, а затем уже резала. Очень немногие форматы можно читать (в файле) в произвольном доступе (длина строк обычно неодинаковая, так что по крайней мере нужно все предшествующие строки прочитать). Для некомпрессированного битмапа это, конечно, сделать можно. Но зачем? Что экономим?
-------------------- ... |
|||
|
||||
neosapient |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 672 Регистрация: 16.8.2006 Репутация: 3 Всего: 4 |
Ладно, в общем нет функции и обойдусь.
Всем спасибо Добавлено @ 20:11 Закрываю |
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Системное программирование и WinAPI" | |
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |