|
7 / 7 / 2
Регистрация: 20.02.2010
Сообщений: 27
|
||||||
.NET 3.x Увеличение картинки17.04.2010, 12:12. Показов 16626. Ответов 34
Метки нет (Все метки)
Пытаюсь увеличить картинку в pictureBox1 крутя trackBar1
Как получше организовать увеличение картинки?
0
|
||||||
| 17.04.2010, 12:12 | |
|
Ответы с готовыми решениями:
34
можно ли (и как) получить размеры картинки из файла до вывода собственно картинки на клиента? Наведение мышки-увеличение картинки Увеличение и уменьшение картинки |
|
|
|||||||||||
| 17.04.2010, 12:50 | |||||||||||
|
Я бы использовал trackBar1 как множитель или проценты от пнервоначального размера. Примерно так:
Хотя вот эторешение лучше:
1
|
|||||||||||
|
7 / 7 / 2
Регистрация: 20.02.2010
Сообщений: 27
|
|
| 17.04.2010, 13:21 [ТС] | |
|
Спасибо, так действительно лучше!
Вот теперь возник вопрос ещё один) Картинка увеличилась и перестала помещаться в pictureBox. Как сделать так чтобы двигать изображение курсором?
0
|
|
|
|
||
| 17.04.2010, 13:34 | ||
|
А что б таскать объекты используйте события MouseDown,MouseUp, MouseMove требуемого компонента
0
|
||
|
7 / 7 / 2
Регистрация: 20.02.2010
Сообщений: 27
|
|||
| 17.04.2010, 14:02 [ТС] | |||
|
Добавлено через 22 минуты Как картинку увеличить?
0
|
|||
|
|
||
| 17.04.2010, 14:11 | ||
![]() Добавлено через 36 секунд правда при этом увеличивается и бокс и катинка Добавлено через 5 минут Если вставить бокс в панель, то его можно расматривать как картинку и только так просто можно будет обеспечивать таскание. Если изменять размеры конкретно изображения, то там с перетаскиванием придется повозиться.
0
|
||
|
7 / 7 / 2
Регистрация: 20.02.2010
Сообщений: 27
|
|
| 17.04.2010, 14:12 [ТС] | |
|
0
|
|
|
7 / 7 / 2
Регистрация: 20.02.2010
Сообщений: 27
|
|||||||||||
| 17.04.2010, 14:30 [ТС] | |||||||||||
|
А если вот так вот:
Запоминаем положение бокса и картинки
Но есть одно НО, когда форму, скажем, раскрываешь, бокс сохраняет свои первоначальный размеры. Есть ли событие по раскрытию окна у формы? Если есть, то можно было бы "перезапомнить" положение бокса или я не прав?
0
|
|||||||||||
|
|
|
| 17.04.2010, 14:40 | |
|
Картинка не изменится, в данном случае ты п прежнему меняешь координаты и размер бокса.
За размер изображения отвечает pictureBox1.Image.Width и pictureBox1.Image.Height, но они только для чтения, поэтому физический размер картинки можно изменить заменив саму картинку. Попробуй все-таки вариант с панелью. Form1_SizeChanged - событие происходящее при изменении размера окна.
0
|
|
|
73 / 73 / 10
Регистрация: 04.12.2008
Сообщений: 458
|
|
| 27.10.2010, 15:43 | |
|
у меня возникла немного другая проблема - после увеличения изображения, начинаем уменьшать его. И качество изображения резко падает, так как умножаем наш коэффициент на текущее изображение. А само изображение уже к этому моменту было увеличено. Что делать?
я делал так, применял коэффициент к исходному изображению. но исходное изображение нужно где-то хранить и загружать каждый раз. Поэтому приложение очень тормозило. Может у кого то есть идея, как это исправить?
0
|
|
|
73 / 73 / 10
Регистрация: 04.12.2008
Сообщений: 458
|
|
| 27.10.2010, 17:41 | |
|
я так и делаю...
раньше хранил изображение на жестком диске, потом решил хранить в ОЗУ. Но... хоть и в случае и ОЗУ изображение загружается быстрее, но все равно очень долго. Например изображение с разрешением 2488 на 3509 при увеличении долго грузится. Но, это еще не все. Мы то фактически при увеличении увеличиваем это разрешение, домножая на коэффициент. Соответственно и быстродействие падает. Как быть в это случае? а, и еще, может кто то знает, какое максимальное значение для разрешения? опять таки это изображение увеличиваю ток на 20% и эксепшн - недопустимый параметр (как раз в том месте где задаем новые размеры для изображения). Какие могут быть идеи?
0
|
|
|
Почетный модератор
|
|||
| 27.10.2010, 17:50 | |||
|
Либо делать обработку в отдельном потоке.
1
|
|||
|
73 / 73 / 10
Регистрация: 04.12.2008
Сообщений: 458
|
|
| 27.10.2010, 17:52 | |
|
та вот все ищу, и ничего толкового найти не могу... ((
если у кого нить есть норм алгоритмы или примеры кода, то подскажите плз...
0
|
|
|
73 / 73 / 10
Регистрация: 04.12.2008
Сообщений: 458
|
|
| 27.10.2010, 23:18 | |
|
для удобства, но так, чтобы с этой картинкой и далее можно было работать (например, на ней линии рисовать).
0
|
|
|
73 / 73 / 10
Регистрация: 04.12.2008
Сообщений: 458
|
|
| 27.10.2010, 23:45 | |
|
я похожие действия делаю, но после этого создаю новое изображение (увеличенное в размере) и сохраняю еще в MemoryStream полученное изображение. может можно как нить по другому?
Добавлено через 3 минуты может можно работать с этим изображением когда оно просто увеличено для удобства, а не его размер?
0
|
|
|
|
|
| 27.10.2010, 23:51 | |
|
порядок такой:
1 кидаешь на форму панель 2 выставляешь свойство panel.AutoScroll=true; 3 кидаешь на панель pictureBox 4 pictureBox.SizeMode=Zoom 5 pictureBox.Size=pictureBox.Image.Size; 6 При необходимости меняешь размер pictureBox.Size, физический размер картинки при этом остается неизменным Ненужны никакие потоки, и резервные копии.
1
|
|
| 27.10.2010, 23:51 | |
|
Помогаю со студенческими работами здесь
20
Увеличение картинки с помощью мыши Перемещение (увеличение / уменьшение) картинки по панели Изменение размера картинки (увеличение, уменьшение) - остаются белые полосы по краям Вращение картинки относительно точки, без изменения картинки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет
значение производной при заданном х
Логарифм записывается как: (x-2)log(x^2+2) -. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|