Flash 10. Сжатие изображений на стороне клиента

Выкладываем свои наработки
haiflive
Сообщения: 38
Зарегистрирован: 2010.02.10, 09:32

Flash 10. Сжатие изображений на стороне клиента

Сообщение haiflive »

Собсно идея. Сжимать изображения на стороне клиента, с использование технологии flash(такая возможность появилась в 10 версии), и потом уже сжатые(обрезанные, перевёрнутые, подписанные и т.п. ..по возможности) отправляются на сервер. И сервер не грузится, и клиент экономией трафика и времени доволен.

Видел несколько платных аналогов, ну да ладно фиг с ними буржуями.. и вот нарыл эту(вроде бесплатную) "наработку", рабочее демо здесь: http://adylevy.com/demo/imgUploadv25/, рабочие скрипты с проектом(FlashDevelop) на этом сайте http://adylevy.com/, пока особо не разбирался ибо..
..Может я зря нарыл, и вдруг есть у кого-нибудь что-либо похожее в готовом виде, или расширение уже есть подобное в базе, гуглил не нашёл..

Есть идеи как это оформить? В виде расширения?. или это никому нафиг не надо..
Ekstazi
Сообщения: 1428
Зарегистрирован: 2009.08.20, 22:54
Откуда: Молдова, Бельцы
Контактная информация:

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение Ekstazi »

Надо! Мне надо! Вещь редкостная, могу сам исходники проверить если что(и расширения к yii, и flash а).
Ekstazi
Сообщения: 1428
Зарегистрирован: 2009.08.20, 22:54
Откуда: Молдова, Бельцы
Контактная информация:

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение Ekstazi »

Ан не, это совсем не то, нельзя кропать. Но в целом перспективы есть если заняться этим. Было бы время - сам бы доделал, есть одна наработка на haxe для кроппинга (аплоада и сжатия нет), выкладываю прям в посте.
Вложения
cropper.rar
Выбирает область на картинке
(86.39 КБ) 207 скачиваний
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение samdark »

Вконтакт так делал, насколько помню. Полезно, если изображения постоянно грузятся. Хотя, конечно, не хранить оригиналы тоже минус — если что поменять размер можно будет только в меньшую сторону.
haiflive
Сообщения: 38
Зарегистрирован: 2010.02.10, 09:32

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение haiflive »

Про haxe первый раз слышу..( хотя почитал вроде перспективно.. Но пока покопаю в сторону flex(от flash), походу там и кропать можно будет, исходники то есть.. жаль он под виндовс только работает, хорошо хоть бесплатный..

Насчёт оригиналов, ну никому они не нужны на сайте, с ними проблем больше, думаю на данный момент максимальный размер который может понадобиться 1600х1200, а изображение в 12мп это просто неуважение к вебмастерам и пользователям..
haiflive
Сообщения: 38
Зарегистрирован: 2010.02.10, 09:32

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение haiflive »

Ещё вопрос про haxe, пользователю потребуется что-либо дополнительно устанавливать в систему для использования модулей haxe?. или пользователя обойдётся стандартными средствами браузера?.
Есть какие-либо программы облегчающие написание программ на haxe?
Ekstazi
Сообщения: 1428
Зарегистрирован: 2009.08.20, 22:54
Откуда: Молдова, Бельцы
Контактная информация:

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение Ekstazi »

Есть, flashdevelop - полная поддержка haxe.
andrew911
Сообщения: 60
Зарегистрирован: 2011.05.30, 23:45

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение andrew911 »

haxe это язык, на нем можно писать и на выходе получать flash-приложение, php, c, js.
Можно писать под определеный язык или универсально и потом экспортировать во flash, php, c, js (с ограничениями, конечно)
haiflive
Сообщения: 38
Зарегистрирован: 2010.02.10, 09:32

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение haiflive »

Мне показалось странным использование haxe, так как он использует модули flex(flash).. я подумал, а не проще ли писать на чистом as3..
эх.. где бы хороший мануал найти по ActionScript 3, пока качаю flashdevelop в комплекте с flex sdk и AdobeAir.. ну вот, опять изучать новый язык и новую СДК.. может кто направит, с чего начать?.
haiflive
Сообщения: 38
Зарегистрирован: 2010.02.10, 09:32

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение haiflive »

Подскажите как это всё чудо установить, а то никак не разберусь в лицензиях.. что платное, что бесплатное..
Adobe Flash обязательно устанавливать?. или flex его заменят?. или дополняет?.
andrew911
Сообщения: 60
Зарегистрирован: 2011.05.30, 23:45

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение andrew911 »

Для разработчика хватит FlashDevelop (http://www.flashdevelop.org/wikidocs/in ... =Main_Page) - очень удобная ИДЕ + скачать Flex SDK (http://opensource.adobe.com/wiki/displa ... k/Flex+SDK).

FlashDevelop вроде сам скачивает СДК. МОжно писать как на чистом ActionScript, так и используя Flex - это по сути набор готовых компонентов (framework).

Программа Adobe Flash платная, но она в основном нужна для создания анимации и тп.
Ekstazi
Сообщения: 1428
Зарегистрирован: 2009.08.20, 22:54
Откуда: Молдова, Бельцы
Контактная информация:

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение Ekstazi »

Так, поясню, haxe отлично взаимодействует с flex + может выдавать as3 код. Вам понадобится только flex sdk . Сам flash вам не нужен. flashdevelop отлично создает swc а сам flex отлично умеет вставлять ресурсы в код. Но я фанат haxe(быстрый компилятор, aswing и много прелестей всяких).
haiflive
Сообщения: 38
Зарегистрирован: 2010.02.10, 09:32

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение haiflive »

Всем спасибо.. начало положенно..
Flex SDK действительно грузится при установке, но он грузился у меня так медленно(5кб/c) и потом в конце оборвался, так что пришлось качать отдельно, ни ничё там только путь в FlashDevelop нужно указать до фреймворка.. там ещё при установке adobeAir грузится, но вроде работает и без него.. и зачем-то понадобился Java(из офф документации) и ещё TortoiseSVN или TortoiseGit, но 2 последних я не ставил.. и ещё забыл флеш проигрыватель дебагер скачал..

Насчёт haxe нужно устанавливать какие-то дополнительные модули в FlashDevelop, или haxe встроен по умолчанию?
Ekstazi
Сообщения: 1428
Зарегистрирован: 2009.08.20, 22:54
Откуда: Молдова, Бельцы
Контактная информация:

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение Ekstazi »

поддержка haxe встроена в FD . Нужно скачать только сам haxe (чуть меньше мегабайта весит) и в настройках FD указать путь к haxe. По-моему, это самая лучшая альтернатива flex у.
andrew911
Сообщения: 60
Зарегистрирован: 2011.05.30, 23:45

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение andrew911 »

Java потому что FlashDevelop работает на джаве.
SVN Git опционально - если будете использовать.

Ekstazi
А минусы есть?
Подумываю поизучать haxe, особенно в виду того, что можно экспортировать для iOS
Ekstazi
Сообщения: 1428
Зарегистрирован: 2009.08.20, 22:54
Откуда: Молдова, Бельцы
Контактная информация:

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение Ekstazi »

FlashDevelop работает не на яве, а на .net
Минусы haxe - очень мало документации + немного другой подход к решению задач (там свои особенности, например, работа с ресурсами в swc файлах, которые можно прям в fd создавать). Синтаксис похож на as3, но, имеет кучу доп. возможностей, к примеру, поддержка шейдеров и много прочих вкусностей (в которых я полный 0, так как в виду отсутствия времени, заказов и опытов я забросил haxe 4 года назад).
haiflive
Сообщения: 38
Зарегистрирован: 2010.02.10, 09:32

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение haiflive »

При чтении документации обнаружил интересное ограничение:
Параметры width и height задают размер растрового изображения. Максимальная величина любого из этих значений — 2880 пикселов.
Протолкнул изображение в 4000х3000 пикселов всё нормально загружает и крутит, но вот изображение в 5000х3750 он отказался крутить(хотя загрузил и сжал нормально) и выдал вот такую ошибку в дебагере:
ArgumentError: Error #2015: Недопустимые данные BitmapData.
at flash.display::BitmapData/ctor()
at flash.display::BitmapData()
at Classes.utils::imgHelper/rotate()
at Classes.image::imgBox/eventRotateHit()
at Classes.utils::verticalMenu/linkHandler()
В расчёте на то, что загружаемые изображения будут скорее всего с современных фотокамер ~12 Мегапикселей(а в будующем может и больше) не возникнут ли проблемы?. Оперативную память они жрут жёстко, - это как минимум.
andrew911
Сообщения: 60
Зарегистрирован: 2011.05.30, 23:45

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение andrew911 »

http://help.adobe.com/ru_RU/FlashPlatfo ... pData.html

В AIR 1.5 и Flash Player 10 максимальный размер объекта BitmapData составляет 8,191 пикселя в ширину или высоту, а общее количество пикселей не может превышать 16,777,215. (Т. е. если ширина объекта BitmapData составляет 8,191 пикселя, его высота не может быть больше 2 048 пикселей.)
В проигрывателе Flash Player 9 и более ранних версий, а также в AIR 1.1 и более ранних версий, это ограничение составляет 2 880 пикселей в высоту и 2 880 пикселей в ширину. Если задать значение ширины или высоты, превышающее 2880, новый экземпляр не будет создан.
Ekstazi
Сообщения: 1428
Зарегистрирован: 2009.08.20, 22:54
Откуда: Молдова, Бельцы
Контактная информация:

Re: Flash 10. Сжатие изображений на стороне клиента

Сообщение Ekstazi »

Ширину и высоту можно ограничить, flash сам думаю разберется с ней. Я так пишу много про haxe потому что в плане оптимизации всего(и памяти и байт кода) он очень сильно выигрывает у flex.
Ответить