Масштабирование картинки

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Масштабирование картинки

Сообщение Antonariy » 03.05.2005 (Вт) 9:42

Рисую Line'ами, Print'ами и т.п. на PictureBox'е. Как нарисованное скопировать в другой пикчербокс, уменьшив вдвое?
Лучший способ понять что-то самому — объяснить это другому.

CodeName33
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 297
Зарегистрирован: 01.09.2004 (Ср) 13:25
Откуда: SPb

Сообщение CodeName33 » 03.05.2005 (Вт) 10:58

Antonariy, Подели все координаты на 2 и шрифт в 2 раза уменьшь.
Программисты не глючат - глючат компиляторы...

Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

Сообщение Sirik » 03.05.2005 (Вт) 12:31

метод PaintPicture

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 03.05.2005 (Вт) 13:41

Н-да... Туплю, господа. В апишках копаюсь.
Лучший способ понять что-то самому — объяснить это другому.

neic
Жираф
Жираф
 
Сообщения: 492
Зарегистрирован: 13.02.2005 (Вс) 23:44
Откуда: Сланцы

Сообщение neic » 03.05.2005 (Вт) 14:27

НУ рас начали тему про мащтоьбирование тогда! Как сделать ЗАГРУЖЕННУЮ каринку в PictueBox, в два раза меньше.

Корч. картинку нарисованную уменьшить в двое и запихнуть в PictureBox?

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 03.05.2005 (Вт) 14:45

StretchBlt()

Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

Сообщение Sirik » 03.05.2005 (Вт) 14:46

вот блин трудно подумать:
для уменьшения
Код: Выделить всё
    Picture2.PaintPicture Picture1.Picture, 0, 0, Picture1.Width / 2, Picture1.Height / 2, 0, 0, Picture1.Width, Picture1.Height

для увеличения
Код: Выделить всё
    Picture2.PaintPicture Picture1.Picture, 0, 0, Picture1.Width, Picture1.Height, 0, 0, Picture1.Width/ 2, Picture1.Height/ 2


где: Picture1 - исходний рисунок

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 03.05.2005 (Вт) 16:37

Так ничего и не получилось.
Картинку я не загружаю, а рисую, то есть в Picture1.Picture ничего нет. А Picture2.PaintPicture Picture1.Image не работает.

Масштабировать координаты нереально, т.к. я делаю систему отчетов а ля ComponentOne VSView7, а перерисовывать отчет при изменении размеров превью - полный отстой. Единственный приемлемый вариант - перегнать картинку в байтовый массив, чтобы работать с ним. Топик с похожей темой я уже поднял из небытия, все соображения по этому поводу прошу постить туда.
Лучший способ понять что-то самому — объяснить это другому.

kirrun
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 514
Зарегистрирован: 06.04.2005 (Ср) 15:41
Откуда: Питер

Сообщение kirrun » 03.05.2005 (Вт) 17:42

Хм... У Image есть св-во Stretch...[/code]
"Единственный безопасный компьютер - это тот, который выключен из электросети, закрыт в сейфе, который зарыт 20 футов под землей в засекреченной местности. И то я не уверен относительно его безопасности."
(Деннис Хьюджес, ФБР)

d3drm
Астролог
Астролог
Аватара пользователя
 
Сообщения: 2873
Зарегистрирован: 29.05.2002 (Ср) 23:34
Откуда: МаСКвА

Сообщение d3drm » 03.05.2005 (Вт) 17:46

Picture Autoredraw поставь
ХЎ

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 04.05.2005 (Ср) 9:36

:oops: Вопрос решен.
Лучший способ понять что-то самому — объяснить это другому.


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

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

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

    TopList