![]() |
Функция getSize пакета flash.sampler. Непонятки с толкованием результатов выполнения.
Добрый вечер!
Есть изображение (Pic01.jpg, 1440x900). Загружаю его Loader`ом и хочу узнать сколько места занимает его bitmapData в памяти. Затем использую метод getVector у BD, чтобы взять информацию с нужного мне кусочка изображения и передаю Vector аргументом в метод setVector у нового объекта BD. Создаю Bitmap, назначаю ему новую BD и добавляю в список отображения. Здесь проблем нет. После этого методом getSize также хочу узнать занимаемое место новым объектом BD. Код AS3:
Отсюда возникает несколько вопросов:
|
Вы сами-то верите, что изображение 1440*900 может весить 48 байт?
3) copyPixels() |
1) Полагаю что в байтах
2) У меня всё на своих местах, оригинал весит больше (для белого прямоугольника больших размеров): Bitmap: 236 Original Image BD: 2595008 Cropped BD: 60048 3) Лучше использовать copyPixels. Методы setVector и getVector нужны, например, при чтении спецефичного форматa данных картинки, чтобы не вызывать setPixel каждый раз, а заполнить массив и присвоить его BitmapData'е. Или при каких-нибудь манипуляциях с цветом или положением точек. |
Код AS3:
|
Цитата:
И как понимать? :) Это баг? Могу выложить то самое изображение. Цитата:
Wolsh, Rzer, на счет copyPixels понял, буду юзать. |
Размер картинки в памяти = w * h * 4 (даже если картинка без альфа-канала, все равно в памяти хранится 4 байта на пиксель)
|
Цитата:
|
| Часовой пояс GMT +4, время: 23:22. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.