![]() |
|
||||||||||
|
|||||
|
Регистрация: May 2001
Адрес: Зеленогорск
Сообщений: 47
|
Кто-нить может подксказать, как записать bytearray в bitmapdata
Если делать через getpixels, всё работает норм, но размеры таких массивов не устраивают, а если делать через jpegecnoder не работает вообще: // в loader содержится обычная картинка загруженная через Loader() var rect:Rectangle = new Rectangle(0, 0, loader.width, loader.height); var bmd:BitmapData = new BitmapData(loader.width, loader.height, false, 0); var bm:Bitmap = new Bitmap(bmd); bm.smoothing = true; bm.bitmapData.draw(loader); var bytes:ByteArray = JPEGEncoder(bmd, 100); bytes.position = 0; // Этот вариант не работает, пишет "Обнаружен конец файла." var bmd1:BitmapData = new BitmapData(loader.width, loader.height, false, 0); bmd1.setPixels(rect, bytes); ТО размеры получаются очень огромные(20кб картинка превращается в 200кб) Просто нужно как-то много картинок загрузить в 1 файл(в xml), а потом из этого xml загружать уже во флеш
__________________
С вами был -=Xel'[Naga] |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
JPEGEncoder вроде как кодирует в формат JPEG.
У него это даже в названии написано. Формат файла подчиняется спецификации, кроме собственно данных о пикселях - сжатых или упакованных по особому алгоритму, файл содержит заголовок, созданный по определенной схеме. Вы же создаете массив байтов из формата JPEG, и надеетесь получить картинку, "пропечатав" каждый байт из файла. Не получится))) Надо загрузить этот массив в Loader методом loadBytes, и он сформирует Вам изображение "обратно".
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: May 2001
Адрес: Зеленогорск
Сообщений: 47
|
Ну да, логика ясна. Но просто если уж loader умеет "понимать" jpg, то уж bitmapdata и подавно это должна уметь )))
ну ладно, это уже другое....спс за ответ, мне это и нужно было.
__________________
С вами был -=Xel'[Naga] |
|
|||||
|
Регистрация: Nov 2008
Адрес: Атланта
Сообщений: 1,271
|
AsyncJPEGEncoder работает быстрей даже чем JPEGEncoder
__________________
Пока я жив, Вы горем обеспечены |
|
|||||
|
BitmapData никому ничего не должна, это просто информация о пикселях изображения. И она ничего не знает о существовании JPEG, PNG, GIF и т.д.
Последний раз редактировалось alatar; 11.07.2010 в 23:24. |
![]() |
![]() |
Часовой пояс GMT +4, время: 09:57. |
|
|
« Предыдущая тема | Следующая тема » |
|
|