Active Directory Products
Calls To Calendar
SMS To CSV
SMS To Gmail
Voicemail To Gmail
How Long For Me
<< 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
// Update the item and you are done
// Make sure you clean up your stream
Pretty straight-forward, but took me some time and digging to get to the bottom of the File.
Resizin' Tom Out.
First Version of SharePoint Validator now available on CodePlex
Resolving "The application failed to initialize properly (0xc000007b)" in MOSS 2007
Adding a Custom ASP.NET Page to MOSS/WSS
SharePoint RPC: Corrupted Binary Files
Fixing SharePoint error Log with "Preserving template record"
Currently no comments.
Add A Comment
Email Address: (not public, used to send notifications on further comments)
Enter the text above, except for the 1st and last character: