|
6 / 6 / 3
Регистрация: 07.04.2015
Сообщений: 123
|
|
Как можно сделать масштабирование изображения на PictureBox?18.05.2015, 17:51. Показов 14009. Ответов 39
Метки нет (Все метки)
Подскажите, как можно сделать масштабирование изображения на PictureBox. Нужен TrackBar, и в зависимости от движения вправо-влево, нужно увеличить-уменьшить изображение. Кто делал, помогите.
0
|
|
| 18.05.2015, 17:51 | |
|
Ответы с готовыми решениями:
39
|
|
Модератор
4356 / 3426 / 512
Регистрация: 27.01.2014
Сообщений: 6,257
|
||||||
| 19.05.2015, 11:18 | ||||||
|
Как вариант сглаживание правда не знаю как убрать
1
|
||||||
|
6 / 6 / 3
Регистрация: 07.04.2015
Сообщений: 123
|
|
| 19.05.2015, 14:25 [ТС] | |
|
Вариант интересный, можно увеличить-уменьшить пропорционально если задать проценты
Dim bm As New Bitmap(PB.Image, PB.Image.Width + 50%, PB.Image.Height + 50%) но как без потерь качества?
1
|
|
|
213 / 230 / 87
Регистрация: 21.04.2013
Сообщений: 404
|
||||||
| 19.05.2015, 15:06 | ||||||
Сообщение было отмечено Памирыч как решение
Решение
Yury Komar, у Вас картинка будет масштабироваться каждый раз, и каждый раз будет ухудшаться ее качество.
Можно сделать свой контрол на основе PictureBox или UserControl.
3
|
||||||
|
Модератор
4356 / 3426 / 512
Регистрация: 27.01.2014
Сообщений: 6,257
|
||||||
| 19.05.2015, 17:57 | ||||||
|
Yanik1987, как вариант можно не делать повторное масшиабирование, а вычислять конечный размер картинки после прокрутки и применять к вновь загруженному, например из файла или ресурсов и тогда качество не будет страдать при каждом изменении размера.
Добавлено через 3 минуты
1
|
||||||
|
6 / 6 / 3
Регистрация: 07.04.2015
Сообщений: 123
|
|
| 19.05.2015, 20:56 [ТС] | |
|
Спасибо, только, не совсем понимаю как работает свой контролл. Может работающий исходник есть?
1
|
|
|
213 / 230 / 87
Регистрация: 21.04.2013
Сообщений: 404
|
|||||||
| 19.05.2015, 23:16 | |||||||
|
Исходника нет. 1. Поместите на форму TrackBar с именем TrackBar1 и UC с именем Uc1 2. Код для Form1:
2
|
|||||||
|
Модератор
4356 / 3426 / 512
Регистрация: 27.01.2014
Сообщений: 6,257
|
||||||
| 20.05.2015, 08:46 | ||||||
Сообщение было отмечено Памирыч как решение
Решение
Yanik1987, Вот мой пример, очень простой и качество не хромает как в первом моем посте.
Происходит путем применения нового размера к ПЕРВОНАЧАЛЬНОМУ изображению избегая потери качества при каждом изменении содержимого PictureBox Кликните здесь для просмотра всего текста
5
|
||||||
|
Модератор
4356 / 3426 / 512
Регистрация: 27.01.2014
Сообщений: 6,257
|
||||||
| 20.05.2015, 10:10 | ||||||
|
вот только пробовал убирать сглаживание таким образом, не получается, может кто знает в чем причина?
Мой пробы?
1
|
||||||
|
213 / 230 / 87
Регистрация: 21.04.2013
Сообщений: 404
|
|||||||
| 20.05.2015, 11:01 | |||||||
|
Добавлено через 8 минут Вставьте в код моего контрола, начиная с 43 строки:
2
|
|||||||
|
Модератор
4356 / 3426 / 512
Регистрация: 27.01.2014
Сообщений: 6,257
|
|
| 20.05.2015, 12:54 | |
|
Petr_S, А как на моем примере это сделать?
0
|
|
|
Модератор
4356 / 3426 / 512
Регистрация: 27.01.2014
Сообщений: 6,257
|
||||||
| 20.05.2015, 13:26 | ||||||
Сообщение было отмечено Yanik1987 как решение
Решение
Petr_S, Yanik1987, без сторонних и доп контролов решил проблему:
Вот готовое решение: Кликните здесь для просмотра всего текста
3
|
||||||
|
213 / 230 / 87
Регистрация: 21.04.2013
Сообщений: 404
|
||||||
| 20.05.2015, 19:37 | ||||||
|
Yury Komar, у меня картинка, при масштабе меньше 100%, двоится (см. скриншот). Двоится потому, что сначала PictureBox отрисовывает, что у него в свойстве Image, а потом происходит отрисовка отмасштабированной картинки в Sub PB_Paint.
Решение без двоения.
2
|
||||||
|
6 / 6 / 3
Регистрация: 07.04.2015
Сообщений: 123
|
||||||
| 20.05.2015, 20:40 [ТС] | ||||||
|
Yury Komar, не понимаю, почему при масштабировании у меня картинка меняет размеры не пропорционально. В чем проблема?
Код:
0
|
||||||
|
Модератор
4356 / 3426 / 512
Регистрация: 27.01.2014
Сообщений: 6,257
|
||||||
| 21.05.2015, 06:12 | ||||||
|
Yanik1987, потому что изображение не квадратное берете...
для ширины прибавляй например 100, а для высоты половинный размер, тоесть 50.. Добавлено через 2 часа 34 минуты Ну и окончательное решение, это отказ от кнопок и производить увеличение при помощи прокрутки колёсика мышки
2
|
||||||
|
213 / 230 / 87
Регистрация: 21.04.2013
Сообщений: 404
|
|||||||
| 21.05.2015, 23:43 | |||||||
|
Лучше заменить на:
1
|
|||||||
|
Модератор
4356 / 3426 / 512
Регистрация: 27.01.2014
Сообщений: 6,257
|
|
| 22.05.2015, 01:34 | |
|
Petr_S, согласен, так будет лучше...
0
|
|
|
0 / -3 / 1
Регистрация: 22.05.2015
Сообщений: 88
|
|
| 23.05.2015, 12:43 | |
|
Такой вопрос, как сделать так чтобы при масштабировании изображения кнопки которые находятся собственно на нём не изменяли своё положение, то есть, я хочу сделать что-то вроде инструмента Лупа? Буду благодарен!
Добавлено через 1 час 59 минут Точнее дело в том, что сам ПБ изменяет свои размеры, а кнопки остаются на старых координатах и уже не подходят под новые размеры ПБ, на сколько надо сдвигать кнопки?
0
|
|
|
Модератор
4356 / 3426 / 512
Регистрация: 27.01.2014
Сообщений: 6,257
|
|
| 23.05.2015, 15:15 | |
|
Vifly, куда сдвигать? Пооожение кнопок можешь настроить в их свойстве Anchor...
0
|
|
|
0 / -3 / 1
Регистрация: 22.05.2015
Сообщений: 88
|
|
| 23.05.2015, 15:19 | |
|
Получается я делаю приложение-карту, на карте расположено множество кнопок - они выполняют роль иконок зданий, как бы я наношу условные обозначения, так вот, после увеличения/уменьшения ПБ кнопки разумеется остаются на своём старом расположении, что меня не устраивает, на карте они уже в неправильном месте находятся и мне надо подогнать расположение этих самых кнопок под новый размер ПБ, чтобы опять всё было на своём месте. Я буду нереально благодарен вам, если поможете, мучаюсь уже довольно-таки долго
0
|
|
| 23.05.2015, 15:19 | |
|
Помогаю со студенческими работами здесь
20
Можно ли получить разрешение изображения в picturebox? Как добиться качественного рисования изображения поверх изображения picturebox?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|
Фото: Daniel Greenwood
kumehtar 13.11.2025
|
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга,
Ты же видел моря и метели.
Как сменялись короны и стяги,
Как эпохи стрелою летели.
- Этот мир — это крылья и горы,
Снег и пламя, любовь и тревоги,
И бескрайние. . .
|