Создание и передача сжатого изображения на сервер
Предлагается задача формирования изображения на клиентской стороне с последующей компрессией и передачей данных на сервер.
Детализация:
Клиентская часть:
- Среда: Flash Player 8.0
- Язык программирования: ActionScript 2.0
- Сценарий:
1. Пользователю предоставляется возможность создать некое изображение размером 800 на 600 точек
(интерфейс может быт аналогичен приведённому здесь http://www.quasimondo.com/archives/000572.php или здесь http://www.gskinner.com/blog/archives/2006/03/saving_bitmapda.html )
2. Пользователю предоставляется возможность отправить созданное изображение на сервер
2.1. Перед отправкой изображение должно быть сжато до размера, не превышающего 450 килобайт (в идеале - 150 - 300 кбайт)
2.2. Алгоритм сжатия должен быть таким, что операция сжатия изображения не будет первышать 15 секунд на среднестатистическом современном персональном компрьютере (поэтому использование классических механизмов сжатия типа PNG и JPG представляется сомнительным)
2.3. Изображение должно передаваться на сервер методом POST протокола HTTP
2.3. Прогресс передачи изображения должен иллюстрироваться работой элемента "progress bar"
Серверная часть:
- Среда: IIS 5.0 / IIS 6.0 + ASP.NET 2.0
- Язык программирования: C# 2.0
- Сценарий:
1. Произвольная реализация интерфейса IHttpHandler (включая System.Web.Page) получает переданное с клиента изображения, и при помощи аглоритма декомпрессии преобразует его в экземпляр класса Image (или его наследника Bitmap)
2. Изображение записывается в корневую директорию веб приложения в виде изображения JPG