Название: QPixmap из QByteArray и обратно Отправлено: carrygun от Апрель 10, 2017, 11:51 Всем привет. Заранее извиняюсь, если ошибся с разделом.
Есть не большая проблема и вот в чем ее суть. Есть у меня некоторые файлики "ресурсов", в которых разные данные идут слоями, в том числе и картинки. Грубо говоря это выглядит так: идет строка (допустим "image"), далее int - размер картинки в байтах, ну сама картинка в байтах. Достаю я картинку следующим образом: Код: m_image.loadFromData(ba, "PNG"); Сохраняю картинку вот так: Код: QByteArray ret; Все вроде как хорошо, но картинка бьется. Банально байтмассивы не совпадают. Да и потом с файлом возятся в Java и делают следующее: загоняют тот же байтмассив в BufferedImage, а потом делают это (https://docs.oracle.com/javase/7/docs/api/java/awt/image/BufferedImage.html#getRaster()) и это (https://docs.oracle.com/javase/7/docs/api/java/awt/image/Raster.html#getNumBands()) и жалуются что numBands != 1. Если кто-то лучше в этом шарит, подскажите пожалуйста, что я делаю не так? Заранее спасибо. Название: Re: QPixmap из QByteArray и обратно Отправлено: Apktyc от Апрель 10, 2017, 12:00 А Ваше приложение открывает измененное изображение?
Может быть меняется формат исходного и сохраненного (было 24-х битное, стало 32). Название: Re: QPixmap из QByteArray и обратно Отправлено: carrygun от Апрель 10, 2017, 12:05 А Ваше приложение открывает измененное изображение? Может быть меняется формат исходного и сохраненного (было 24-х битное, стало 32). Да, в моем приложении я могу его просматривать после пересохранения ресурса. Никаких проблем нет. Более того, изначальный формат изображения и "пересохраненный" полностью совпадают. Название: Re: QPixmap из QByteArray и обратно Отправлено: Apktyc от Апрель 10, 2017, 13:29 А не может быть такого, что при обработке в Java меняют формат?
Просто, Вы при сохранении формат не меняете, а на той стороне, он уже другой, что несколько странно. |