ImageSnapshot для больших изображений в гибком ограничении размера - PullRequest
1 голос
/ 18 ноября 2010

Я загружаю и отображаю большое изображение, скажем, 6000 x 6000 px, используя тег изображения. Я хотел сделать снимок изображения. Но максимальное ограничение, которое я получаю, составляет 2880 пикселей при использовании Flash 4, Flash Player 10. Разве предел FP 10 не увеличен до 4096 пикселей? Тогда почему я получаю 2880? Есть ли способ увеличить этот размер. Или любой другой метод, который вы предлагаете при этом?
Спасибо.

Ответы [ 3 ]

2 голосов
/ 18 ноября 2010

вы можете хранить его в нескольких BitmapDatas и afaik в одном ByteArray.

1 голос
/ 06 марта 2013

Класс ImageSnapshot использует класс BitmapData для создания растрового изображения вашего скриншота перед его преобразованием в PNG или JPEG.

До версии Flash Player 9 класс BitmapData был ограничен 2880 пикселями. Но поскольку у flash player 10 ограничение выше (около 8000 пикселей по высоте или ширине).

Но ImageSnapshot не был обновлен.

Здесь я объясню обходной путь:

http://weflex.wordpress.com/2013/03/06/imagesnapshot-and-bitmapdata-size-limit/

Пока я могу идти до 4650 пикселей /

0 голосов
/ 30 ноября 2010

Обратите внимание на сигнатуру метода: общедоступная статическая функция captureImage (источник: *, dpi: Number = 0, кодировщик: IImageEncoder = null, scaleLimited: Boolean = true): ImageSnapshot

Итак, вы пробовали:mySnapshot: ImageSnapshot = ImageSnapshot.captureImage (mySource, 200, mx.graphics.codec.JPEGEncoder, false);

Обратите внимание на последний параметр == false, чтобы отключить scaleLimited ...

...