1 | ||||||
Преобразовать JPG или PNG в BMP22.06.2015, 18:02. Показов 9532. Ответов 15
Метки нет (Все метки)
Есть код:
TMemoryStream *s = new TMemoryStream; TImage *Infile = new TImage(NULL); TJPEGImage *jpg = new TJPEGImage(); TPNGObject* png = new TPNGObject(); Вопрос : что я делаю не так?
0
|
22.06.2015, 18:02 | |
Ответы с готовыми решениями:
15
Вращение TImage c PNG. Нужна переделка решения для BMP под PNG Как преобразовать рисунок из "png" в "bmp" или в "jpg"? ListView загрузка изображения (jpg, png, bmp) Как сделать программно из BMP (JPG, PNG) - ICO |
22.06.2015, 21:04 | 4 |
0
|
22.06.2015, 23:47 [ТС] | 5 | |||||
Avazart, я что-то не пойму!
Не по теме: jpg->LoadFromStream(s);
0
|
23.06.2015, 23:50 [ТС] | 6 | ||||||||||||||||||||
Сделал костыль:
P.S. Если у Вас есть мысли по этому поводу, то поделитесь. Кроме того появилась другая ошибка : некорректность загружаемого файла(файл 12).
Помогите решить проблему. Сам пытался:
Заранее спасибо.
0
|
24.06.2015, 00:41 | 7 |
Вы точно нормальные файлы скармливаете? Смотрите на вами залитю вторую картинку - расширение не соответствует истинному формату - откройте изображение в текстовом/hex - редакторе и обратите на первые символы в нем.
Есть вроде ExtractFilleExt() для изьятия расширения.
1
|
Практикантроп
4838 / 2724 / 532
Регистрация: 23.09.2011
Сообщений: 5,789
|
|||||||||||
24.06.2015, 08:52 | 8 | ||||||||||
Сообщение было отмечено Gdasar как решение
Решение
Чтобы этот фрагмент заработал, я переделал его след. образом__
Добавлено через 10 минут а для загрузки с потока (из ресурсов приложения) - вот пример__
1
|
24.06.2015, 17:22 [ТС] | 9 | |||||
Avazart, попробовал я ExtractFilleExt() - показывает, что файл имеет тип png
А как программно узнать тип файла? Чтобы избежать таких ошибок.
0
|
24.06.2015, 17:26 | 10 |
Не тип а расширение, еу? Судя по всему вы не понимаете что такое расщширение файла и его реальный тип/формат
А можно на.... посылать тек кто посовывает файлы с неправильным расширением.
0
|
Практикантроп
4838 / 2724 / 532
Регистрация: 23.09.2011
Сообщений: 5,789
|
|
24.06.2015, 17:27 | 11 |
Сообщение было отмечено Gdasar как решение
Решение
Думаю, надо считать в буфер начальный блок файла и проанализировать его, вооружившись описаниями стандартов. Потому что более точную информацию взять неоткуда, - расширение может поменять любой мало-мальски грамотный октябрёнок.
0
|
24.06.2015, 17:33 | 15 |
Или тупо пытаться открыть всеми возможными способами по очереди скрывая ошибки в блоке catch() такой себе ленивый способ.
Естественно изначально ориентироваться на расширения, а если нет - попытки открыть как оставщиеся форматы.
0
|
24.06.2015, 18:05 [ТС] | 16 | |||||
Ну,как-то так:
0
|
24.06.2015, 18:05 | |
24.06.2015, 18:05 | |
Помогаю со студенческими работами здесь
16
Сохранение изображения в различных форматах (jpg, png, bmp) Сохранение изображений в формате png, gif, jpg, bmp Преобразовать bmp в png и обратно Как вывести в окно картинку jpg, png и др. (кроме .bmp) и звук, кроме WAV Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |