Название: Скейл QPixmap Отправлено: stochastic от Февраль 13, 2023, 16:54 Привет, не могу найти корректного способа решить проблему со скейлом QPixmap, допустим у нас есть какая-нибудь обоина 8к, при открытии ее без скейла у меня окно улетает далеко за рамки рабочего стола. Я размещаю пиксмапу в QLabel, и если перед этим я делаю лейблу ресайз и скейлю обоину в рамках лейбла, то обоина меняет свои фактические данные. Каким образом можно вписать картинку в рамки лейбла без потери качества?
Пока я пошел таким путем, делаю две пиксмапы (копию), одну зашакаленную я вывожу "миниатюрой" в лейбле, а вторую реальную посылаю на сервер, выглядит все как-то так: Код: plbl->resize(500, 500); На сервере та же история с двумя пиксмапами. Т.е. посылаем мы только реальную картинку, но вот эти копии для скейла напрягают, может есть какой-то способ/пример, как это можно сделать по-человечески? Название: Re: Скейл QPixmap Отправлено: tux от Февраль 13, 2023, 20:37 Не вполне понятно, что именно вам надо, но можно попробовать QScrollArea
Название: Re: Скейл QPixmap Отправлено: stochastic от Февраль 13, 2023, 22:21 Попробовал QScrollArea, окей, оно +/- работает, но меня интересует есть ли корректный способ отскейлить картинку в нужных границах (QLabel в моем случае) без потери качества и изменения фактических данных, или без создания копии функция scaled нам в любом случае "зашакалит" исходник?
Название: Re: Скейл QPixmap Отправлено: tux от Февраль 13, 2023, 23:37 Вы хотите уменьшить или увеличить картинку без изменения качества? Это, вообще как? ;D
Можно поиграться с резкостью, но это всё равно потеря информации, а значит и качества. Название: Re: Скейл QPixmap Отправлено: stochastic от Февраль 14, 2023, 03:33 Кхм, ну смотрите :), у нас есть, допустим, дефолтный вьювер изображений в том же windows, он же не изменяет изображение при его масштабировании, и в нем есть опция "масштабировать по размеру". Вот меня интересует нечто подобное в рамках Qt, как я понимаю для этого нужно скейлить не само изображение, а элемент, в который мы его помещаем? В моем случае это QLabel, ну и соответственно если он находится в QScrollArea, то и шаг скроллбаров тоже в зависимости от этого подкручивать.
Название: Re: Скейл QPixmap Отправлено: kambala от Февраль 14, 2023, 09:55 https://doc.qt.io/qt-6/qtwidgets-widgets-imageviewer-example.html
|