NerdyHearn
Home

IPhone SMS To Gmail

Consulting

Blog
Software
Projects
Links
About
Contact

Blog
Facebook
Twitter
LinkedIn

NerdyHearn - Blog


<< Back To All Blogs

Using MOSS and WSS SharePoint Workflow to Resize Images in an Image Library

Thursday, May 14th, 2009

It is often a request that image libraries have all of their image widths or heights normalized when they are uploaded to a SharePoint Image Library.
SharePoint does not natively include this functionality, so workflow is necessary to resolve the issue.

Image resizing is out of the scope of this blog post, and I have a class that I have used for a long time to achieve resizing. For the case of this blog post which
is going to be short, I will leave out the details of resizing an image, maintaining aspect ratio, etc.

On to the code:

// workflowProperties it the property set for workflow that you would have defined as
// a SPWorkflowActivationProperties object at the beginning of your workflow
// Item is specific to the item in workflow, File is the file item associated with the image library item
Resizer resizer = new Resizer(workflowProperties.Item.File.OpenBinaryStream());
resizer.Width = 1000;

// My Resize method will alter the image and return a stream of the data
Stream returned = resizer.Resize();

// The File supports a SaveBinary method which can take a stream in this case, but also a byte array
workflowProperties.Item.File.SaveBinary(returned);

// Update the item and you are done
workflowProperties.Item.File.Update();

// Make sure you clean up your stream
ms.Close();

Pretty straight-forward, but took me some time and digging to get to the bottom of the File.

Resizin' Tom Out.

Tags

SharePoint CSharp

Related Blogs

Automatically Setting File Name in SharePoint when submitting an InfoPath 2007 Form
Fixing MOSS/WSS SharePoint errors with Alternate Access Mappings
SharePoint RPC: Corrupted Binary Files
Resolving "Tracing Service lost trace events" in MOSS 2007
Reading Digital Signatures from InfoPath Forms in MOSS 2007 and WSS 3.0 Workflow

Comments

Currently no comments.

Add A Comment

Name:


URL:


Email Address: (not public, used to send notifications on further comments)


Comments:


Please enter the text from the image:



NerdyHearn - Latest tech news relating to C#, SharePoint, PHP, general development, and more. LiveNation Feed - Feeds of all your local artists, concerts, and events through your favorite RSS reader SaveMySerials - Protect yourself from theft, fire, natural disasters and more by recording your serial numbers Tweets2Mail - Backup and search your twitter stream from Gmail TimeSinceI - Track how long you have quit smoking, how long you have been married, or how long you have done anything.