Last week someone started a thread in one of the SDN forums asking how one could go about making Sitecore resize images larger than a specific width down to that width.
Yesterday an astute SDN visitor recommended using a custom getMediaStream pipeline processor to set the maximum width for images — a property for this maximum width is exposed via the GetMediaStreamPipelineArgs parameters object passed through the getMediaStream pipeline.
I thought I would try out the suggestion, and came up with the following getMediaStream pipeline processor:
using Sitecore.Diagnostics;
using Sitecore.Resources.Media;
namespace Sitecore.Sandbox.Resources.Media
{
public class MaxWidthProcessor
{
public int MaxWidth { get; set; }
public void Process(GetMediaStreamPipelineArgs args)
{
Assert.ArgumentNotNull(args, "args");
if (!ShouldSetMaxWidth(args))
{
return;
}
args.Options.MaxWidth = MaxWidth;
}
private bool ShouldSetMaxWidth(GetMediaStreamPipelineArgs args)
{
Assert.ArgumentNotNull(args, "args");
return MaxWidth > 0 && args.Options.MaxWidth < 1;
}
}
}
I then interlaced it into the getMediaStream pipeline before the ResizeProcessor processor — this is the processor where the magical resizing happens — using the following patch configuration file:
<?xml version="1.0" encoding="utf-8"?>
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<pipelines>
<getMediaStream>
<processor patch:before="processor[@type='Sitecore.Resources.Media.ResizeProcessor, Sitecore.Kernel']"
type="Sitecore.Sandbox.Resources.Media.MaxWidthProcessor, Sitecore.Sandbox">
<MaxWidth>1024</MaxWidth>
</processor>
</getMediaStream>
</pipelines>
</sitecore>
</configuration>
The maximum width for images is set to 1024 pixels — the width I am using in my test below.
Let’s see how we did.
I decided to use one of my favorite images that ships with Sitecore for testing:
As you can see its width is much larger than 1024 pixels:
After uploading the lighthouse image into the media library, its width was set to the maximum specified, and its height was scaled down proportionally:
If you have any thoughts on this, or other ideas on resizing images uploaded to the media library, please drop a comment.







Hi Mike,
I am with you ..
I was using sc:image and its properties so called maxHeight and maxWidth in order to resize the images as per need.
THanks
I am with you..
one other way is we can use sc:Image and its property so called maxHeight and maxwidth..
Thanks,
Pradeep Shukla