views:

2265

answers:

4

Do you know of any Silverlight "Image Editor" controls, commercial or open source?

Primary feature requirements:

  • Crop/resize/rotate image
  • Set background color
  • Insert text
  • Insert multiple images

I'm aware of this similar question (November '08), but the Atalasoft offerings (currently the only answer) doesn't seem to include a Silverlight version.

+2  A: 

Given the fact that the first hit Google returns for "Silverlight Image Editor" is a November 2008 forum post asking for one, I'd say this animal hasn't yet been created.

Dave Swersky
Yup, I agree. Sad. Maybe there's a business opportunity here?? :)
Jakob Gade
Funny you mention it... after realizing it I started a little pet project. After doing a bunch of research I can say a Silverlight image editor with the features you mention above is *possible*, but not easy.
Dave Swersky
A: 

Hi.

I'm not sure there is such a beast available in the open source world yet. If there was I'd have found it, as I had the same requirement. But, it's certainly possible to create one with Silverlight 3's capabilities, combined with a small dash of open source 3rd party libraries such as FJcore. I have done just that, as I wanted to be able to add a local image file, and upload an optimised version to remote database.

The uploader/editor I built does the following:

Select an image (JPG, GIF, PNG) from local file system Extract EXIF data Rotate the image Crop image Adjust brightness, contrast, saturation Resize and upload an optimised JPEG via a webservice

Writablebitmap is the key to editing bitmaps. It's farly straightforward, and that what I use to render the image, crop the image and resize before sending. It's worth remembering that a bitmap is not a very effecient way to send the image, so I used FJCore to encode the the bitmap beforing sending. The other really useful thing that SL3 does is support pixel effects writen in HLSL. There are two built in ones, drop shadow and blur, and you can write your own. I adapted some HLSL code from the DirectX SDK to produce a custom effect that adjusts the contrast, brightness etc.

Oh. And one other gotcha. I'm not sure if it was a bug or my own lack of understanding, but I had some difficulty in rotating an image with the writablebitmap constructor, and ended up writing a simple array transform to rotate the writeable bitmap.

There's a demo showing all of the features (bar the upload) here:

http://www.sharemyroutes.com/demos/imageupload.aspx

A: 

Not your feature requirement list at all (much more geared toward photo retouching than text or picture adding), but there is http://imago.konnektion.com of course... :)

A: 

http://nokola.com/easypainter Still Beta but already has a lot of functionality. Also partial sources for controls and effects are published on the blog