Обработка изображений в Silverlight 2
-
09-06-2019 - |
Вопрос
Можно ли выполнять обработку изображений в silverlight 2.0?
Я хочу сделать снимок, обрезать его, а затем отправить новое обрезанное изображение на сервер. Я знаю, что могу подделать его, обрезая изображение, но это только влияет на рендеринг изображения. Я хочу создать новое изображение.
После дальнейших исследований я ответил на свой вопрос. Ответ: Нет . Поскольку все apis будут в System.Windows.Media. Imaging и в этом пространстве имен нет соответствующих классов в Silverlight
Я собираюсь использовать fjcore. http://code.google.com/p/fjcore/
Спасибо, Джонас
Решение
Ну, на самом деле вы можете выполнять локальную обработку изображений в Silverlight 2 ... Но нет встроенных классов, которые могли бы вам помочь. Но вы можете загрузить любое изображение в байтовый массив и начать манипулировать им или реализовать свой собственный кодировщик изображений.
Джо Стегман получил много полезной информации о "редактируемых изображениях" в Silverlight по адресу http://blogs.msdn.com/jstegman/ . Он делает такие вещи, как применение фильтров к изображениям, генерирование мандлеброт и многое другое.
В этом блоге обсуждается JPEG Silverilght Encoder (FJCore), который можно использовать для изменения размера и повторного сжатия размера клиента фотографий: http://fluxcapacity.net/2008/07/14/fjcore-to-the-rescue/
Другим инструментом является "Fluxify". который позволяет изменять размер и загружать фотографии с помощью Silverilght 2. Его можно найти по адресу http://fluxtools.net/ р>
Так что да, обработка изображений на стороне клиента определенно может быть выполнена в Silverilght 2. Счастливого взлома!
Другие советы
Я знаю, что это не дает прямого ответа на ваш вопрос, но что, если вы сделаете все обрезки на стороне клиента, чтобы обрезать изображение, а затем отправите серверу исходное изображение и координаты для обрезки. Затем на стороне сервера, которая, вероятно, больше подойдет для манипулирования изображениями (например, в PHP это очень просто), вы будете фактически обрезать изображение и сохранять обрезанную версию.
В Silverlight 3 существует первоклассная поддержка растровых поверхностей: http://blogs.msdn.com/kaevans/archive/2009/03/20/some-silverlight-3-goodness-using-writeablebitmap.aspx р>