Работа с изображением

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
v-adix
Постоялец
Постоялец
 
Сообщения: 490
Зарегистрирован: 14.11.2002 (Чт) 15:11

Работа с изображением

Сообщение v-adix » 16.01.2007 (Вт) 15:13

Собственно вот задача: загрузить BMP-шки из файла и работать с ними используя функции библиотеки gdi GetPixel, SetPixel, BitBlt и тд
Только не посылайте плиз в поиск, я тока что оттуда! Нашел кое что но оно отказывается работать. а именно: загрузить через loadpicture в ipicturedisp, создать DC и сделать render в него. только вот функция render у ipicturedisp ругается почему-то ( говорит что type mismatch. если можно плиз дайте готовый код или хотябы какие функции надо юзать и для чего они.
Ещё может кто знает алгоритм преобразования цветного изображения в grayscale, плиз подскажите )

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 16.01.2007 (Вт) 15:25

Из поиска, говоришь? ;-)
Иди обратно. http://bbs.vbstreets.ru/viewtopic.php?t=11061
Изображение

v-adix
Постоялец
Постоялец
 
Сообщения: 490
Зарегистрирован: 14.11.2002 (Чт) 15:11

Сообщение v-adix » 16.01.2007 (Вт) 16:16

я ж говорю в поиск не надо посылать ))
ответа на свой вопрос о загрузке картинки я там не нашел )

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 16.01.2007 (Вт) 16:25

А что ты нашел в поиске? Тот код, который у тебя не работает?
Весь мир матрица, а мы в нем потоки байтов!

v-adix
Постоялец
Постоялец
 
Сообщения: 490
Зарегистрирован: 14.11.2002 (Чт) 15:11

Сообщение v-adix » 16.01.2007 (Вт) 16:39

я никакого конкретного решения не нашел, нашел только теорию что надо загрузить изображение в ipicturedisp, создать DC и битмап для него, выполнить функцию render у обьекта ipicturedisp с указантем созданного DC. так вот у меня масса вопросов. во первых метод render ругается на type mismatch (аргументы все нули задаю кроме первого), создается DC с помощью createcompatibleDC? битмап создается с помощью createcompatiblebitmap? как они связаны и для чего нужны? что значит "создать битмап для dc"? и прочее.. мне все это непонятно, я с графикой работаю впервые... апи-гид перерыл, нашел там пример использования всех этих функций, но обьяснения что как и для чего - там нету... вот так вот ..

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 16.01.2007 (Вт) 16:46

Что нужно-то?
Загрузить из файла в DC?
Ну так грузи в DC пикчербокса, и не парься.
Set Picture1.Picture = LoadPicture("xxx.jpg")
Изображение

v-adix
Постоялец
Постоялец
 
Сообщения: 490
Зарегистрирован: 14.11.2002 (Чт) 15:11

Сообщение v-adix » 16.01.2007 (Вт) 17:04

про пикчур бокс я знаю, но не будет ли с ним проблем никаких? просто я не хотел бы связаться с компонентами...

Alexanbar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1727
Зарегистрирован: 13.04.2004 (Вт) 23:04
Откуда: Волгоградская обл.

Re: Работа с изображением

Сообщение Alexanbar » 16.01.2007 (Вт) 21:16

v-adix писал(а):только вот функция render у ipicturedisp ругается почему-то ( говорит что type mismatch)


Знакомый синдром. Сталкивался с тем, что код один и тот же, а меняешь hdc, и выходи эта ошибка.

См. StretchBlt, TransparentBlt


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 105

    TopList