Flash загрузить изображение изменить размер на стороне клиента - PullRequest
20 голосов
/ 10 января 2009

Есть ли у кого-нибудь идеи о том, как изменить размер изображения на стороне клиента с помощью flash.

Пример: Клиент выбирает изображение с разрешением 1200x800, и перед загрузкой его флеш-память превращает его в половину или что-то в этом роде.

Есть мысли?

Ответы [ 7 ]

16 голосов
/ 06 января 2011

Plupload является открытым исходным кодом, имеет хорошую документацию и поддерживает несколько платформ, включая Gears и HTML5!

http://www.plupload.com/index.php
http://www.plupload.com/example_all_runtimes.php

Ах, да, он поддерживает изменение размера изображения ДО загрузки. Ближайший вариант к aurigma, но бесплатно :)

10 голосов
/ 05 августа 2009

взгляните на сценарий, который я написал: изменение размера изображения на стороне клиента

4 голосов
/ 16 февраля 2010

http://www.shift8creative.com/projects/agile-uploader/index.html

Я только что закончил этот маленький проект - бесплатный для использования. Это не позволит конечному пользователю выбрать размер, но вы можете передать ограничение максимальной ширины и максимальной высоты. Может быть, вы можете сделать несколько страниц / вставок с различными параметрами.

1 голос
/ 04 мая 2010

Я использую флэш-загрузчик с http://www.resize -before-upload.com , работает просто отлично:)

1 голос
/ 16 января 2009

Вам необходимо создать матрицу преобразования, а затем использовать исходное растровое изображение в новом. Вот идея, которую я просто набираю и не проверял:

function resize(obm:BitmapData, scale:Number): BitmapData {
   var resizeMatrix:Matrix = new Matrix();
   resizeMatrix.scale(scale, scale);

   var rbm:BitmapData = new BitmapData(obm.width * scale, obm.height * scale);
   rbm.draw(obm, resizeMatrix);

   return rbm;
}

Однако я не претендую на качество результата. Я думаю, что я помню, как пытался сделать это в прошлом, не любил результат и пытался ...

1 голос
/ 10 января 2009

Silverlight, ActiveX и Java могут сделать это полностью на стороне клиента. Если вам нужно использовать Flash, вам нужно будет использовать Flash 10, который пока не распространен. Вот пример загрузки изображения во Flash и изменения его размера на клиенте из Flash Cafe.

Другие опции во Flash 8 или 9 могут включать сценарий изменения размера на стороне сервера, что в большинстве случаев не подходит для этой цели.

0 голосов
/ 19 сентября 2011

Последняя версия SwfUpload выполняет изменение размера изображения на стороне клиента (с использованием Flash). Довольно полезный инструмент, хотя дополнительные функции, такие как отображение прогресса загрузки, могут стать немного сложными.

http://code.google.com/p/swfupload/

...