![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Конвертация BMP to JPEG
TS © (2005-05-05 15:27:00)Наткнулся на следующую проблему:
приложение рисует нечто на Bitmap->Canvas, соответствено может быть большим или маленьким - это уж как воображение разгуляется. Полученное художество нужно сохранить в JPEG файл. Пользуюсь TJPEGImage, делаю ему Assign нарисованного Bitmap'a и говорю SaveToFile.
Так вот с маленькими картинками все ОК - сохраняются отлично. А вот с большими выдает месагу мол памяти ему недостаточно ?! и хоть тресни ...
Может кто знает как по другому можно осуществить сохранение в формат JPEG?
MBo (2005-05-06 09:58:00) [1]попробуй найти:
1. enhanced jpeg implementation (Gabriel Corneanu)
2. Intel JPEG Library.
TS (2005-05-06 09:31:00) [2]Ага ... на bitmap жрется прилично, а уже на Save JPEGа сжирается окончательно ....
Eraser (2005-05-05 21:04:00) [3]TS ©
Process Explorer'ом отслеживал состояние памяти твоей программы и всей ситемы?
TS (2005-05-05 17:35:00) [4]Проблема не в коде, а в памяти. Видно bitmap сильно здоровый для оперативки используемой машины ..., для прототипа сойдет (будут небольшие нормально сохраняемые), а вот далее нужно будет искать нечто не bitmap-ое, поскольку уж больно требователен сей друг к памяти
А вообще такова конва: собирается схема из структурных элементов (типа TImage) сия схема может быть большой (более 5000 Х 5000) хранится в БД, но должна быть функция сохранения в файл формата JPEG, вот тут то я и создаю объект типа TBitmap и на его Canvas переношу содержимое Canvas'ов картинок с установленными координатами Left,Top и далее после того как сформирую Assign'ю в TJPEGImage и пытаюсь сохранить .....
Eraser (2005-05-05 17:10:00) [5]TS ©
Если проблема действительно в компоненте (на счёт чего есть сомнения), то использй другую библиотеку (поищи на torr.ru), а вообще мне кажется что проблема в коде.
TS (2005-05-05 16:30:00) [6]5000 X 3000 (Width X Height) при этом Bitmap держит нормально ... вероятно он когда его лопатить начинает при сохранении, то сжирает все оставшееся ... другого варианта нету
отсюда и вопрос, может как по другому можно формировать JPEG и записать его затем?
Eraser (2005-05-05 16:11:00) [7]TS ©
А вот с большими выдает месагу мол памяти ему недостаточно ?!
На сколько большими? Большое большому рознь )