<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.3.3" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>
<channel>
	<title>Comments on: ASP.NET Image Resize Handler</title>
	<link>http://blog.jasonnussbaum.com/?p=104</link>
	<description>Software construction and a whole lot of off-topic ramblings from the mind of Jason Nussbaum.</description>
	<pubDate>Fri, 10 Sep 2010 09:41:20 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.3</generator>
		<item>
		<title>By: Andy</title>
		<link>http://blog.jasonnussbaum.com/?p=104#comment-404415</link>
		<dc:creator>Andy</dc:creator>
		<pubDate>Tue, 09 Dec 2008 18:52:04 +0000</pubDate>
		<guid>http://blog.jasonnussbaum.com/?p=104#comment-404415</guid>
		<description>Code is working fine.

Thanks for the code download support.</description>
		<content:encoded><![CDATA[<p>Code is working fine.</p>
<p>Thanks for the code download support.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nathanael Jones</title>
		<link>http://blog.jasonnussbaum.com/?p=104#comment-402727</link>
		<dc:creator>Nathanael Jones</dc:creator>
		<pubDate>Thu, 27 Nov 2008 14:30:33 +0000</pubDate>
		<guid>http://blog.jasonnussbaum.com/?p=104#comment-402727</guid>
		<description>Yeah... I'm glad there are so many more options now... I think ASP.NET was the last web framework to get good image resizing stuff...

I've been build a *lot* of custom solutions for people lately, so the latest 1.2 build has evolved into a more extensible and flexible framework.. The disk caching component can be used separately, as well as the image manipulation code. And you can now set resizing defaults for folders from code, or make your own syntax.

Best Regards,
Nathanael</description>
		<content:encoded><![CDATA[<p>Yeah&#8230; I&#8217;m glad there are so many more options now&#8230; I think ASP.NET was the last web framework to get good image resizing stuff&#8230;</p>
<p>I&#8217;ve been build a *lot* of custom solutions for people lately, so the latest 1.2 build has evolved into a more extensible and flexible framework.. The disk caching component can be used separately, as well as the image manipulation code. And you can now set resizing defaults for folders from code, or make your own syntax.</p>
<p>Best Regards,<br />
Nathanael</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jason</title>
		<link>http://blog.jasonnussbaum.com/?p=104#comment-399333</link>
		<dc:creator>jason</dc:creator>
		<pubDate>Mon, 10 Nov 2008 21:00:29 +0000</pubDate>
		<guid>http://blog.jasonnussbaum.com/?p=104#comment-399333</guid>
		<description>Hey Nathanael,

hehe, that's exactly why I wrote mine - couldn't find one that did what I wanted to. the original version (aka the version that's still up) was a stop-gap to get something working. I revamped it for work later on, making it more robust, but didn't take the code with me when I left (at least, I haven't been able to find it, heh).

Truth is, I've been pushing your version on a couple projects lately - thanks for the link!

Cheers.</description>
		<content:encoded><![CDATA[<p>Hey Nathanael,</p>
<p>hehe, that&#8217;s exactly why I wrote mine - couldn&#8217;t find one that did what I wanted to. the original version (aka the version that&#8217;s still up) was a stop-gap to get something working. I revamped it for work later on, making it more robust, but didn&#8217;t take the code with me when I left (at least, I haven&#8217;t been able to find it, heh).</p>
<p>Truth is, I&#8217;ve been pushing your version on a couple projects lately - thanks for the link!</p>
<p>Cheers.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nathanael Jones</title>
		<link>http://blog.jasonnussbaum.com/?p=104#comment-398557</link>
		<dc:creator>Nathanael Jones</dc:creator>
		<pubDate>Tue, 04 Nov 2008 20:41:18 +0000</pubDate>
		<guid>http://blog.jasonnussbaum.com/?p=104#comment-398557</guid>
		<description>Nice work! It's good to finally see a free image resizer appear.  Nothing of the kind was available when I developed mine, unfortunately.

A few suggestions: 
* When you cache versions, you need some checks and balances to prevent denial of service attacks. I opted for placing all cached images in a single folder, and hashing the request URL to get the filename. A configurable limit is placed on the number of cached images, and the 10% least used are deleted when that limit is reached. I also put an upper bound on the target size, so that can't be abused.

* GetThumbnailImage is not a good method to use... It will use embedded thumbnail data from the image if available, producing inconsistent and blurry results... Use DrawImage and high-quality compositing settings instead for photoshop-level quality.

* If users upload new versions of images, the thumbnails won't be updated. You need to set the UTC modified date on the cached versions to match the originals, and compare them to see if an update is required.

* When the image is *cached* to disk, you don't have to read it back into memory to send it to the client - this will result in very bad performance under load. Just use WriteFile()... 

* I'd recommend using using(){} around all objects that implement IDisposable... Bitmap and Image references are *not* garbage collected by .NET, so you need to make sure they are disposed if even if an exception occurs.

Hope this helps! 

You can find out more about my image resizer and download it at
http://nathanaeljones.com/products/asp-net-image-resizer/</description>
		<content:encoded><![CDATA[<p>Nice work! It&#8217;s good to finally see a free image resizer appear.  Nothing of the kind was available when I developed mine, unfortunately.</p>
<p>A few suggestions:<br />
* When you cache versions, you need some checks and balances to prevent denial of service attacks. I opted for placing all cached images in a single folder, and hashing the request URL to get the filename. A configurable limit is placed on the number of cached images, and the 10% least used are deleted when that limit is reached. I also put an upper bound on the target size, so that can&#8217;t be abused.</p>
<p>* GetThumbnailImage is not a good method to use&#8230; It will use embedded thumbnail data from the image if available, producing inconsistent and blurry results&#8230; Use DrawImage and high-quality compositing settings instead for photoshop-level quality.</p>
<p>* If users upload new versions of images, the thumbnails won&#8217;t be updated. You need to set the UTC modified date on the cached versions to match the originals, and compare them to see if an update is required.</p>
<p>* When the image is *cached* to disk, you don&#8217;t have to read it back into memory to send it to the client - this will result in very bad performance under load. Just use WriteFile()&#8230; </p>
<p>* I&#8217;d recommend using using(){} around all objects that implement IDisposable&#8230; Bitmap and Image references are *not* garbage collected by .NET, so you need to make sure they are disposed if even if an exception occurs.</p>
<p>Hope this helps! </p>
<p>You can find out more about my image resizer and download it at<br />
<a href="http://nathanaeljones.com/products/asp-net-image-resizer/" rel="nofollow">http://nathanaeljones.com/products/asp-net-image-resizer/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Recent Faves Tagged With "coding" : MyNetFaves</title>
		<link>http://blog.jasonnussbaum.com/?p=104#comment-396822</link>
		<dc:creator>Recent Faves Tagged With "coding" : MyNetFaves</dc:creator>
		<pubDate>Thu, 23 Oct 2008 17:46:50 +0000</pubDate>
		<guid>http://blog.jasonnussbaum.com/?p=104#comment-396822</guid>
		<description>[...] &#62;&#62; coding    Sprinkle some Groovy into your App Part 1 First saved by jbond00747 &#124; 1 days ago      blog-j: Symbolizing, Coding, Objectifying, Processing &#34; ASP.NET... First saved by JamesNintendoNerd &#124; 2 days ago      Pandora Prototype in Action First saved by [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] &gt;&gt; coding    Sprinkle some Groovy into your App Part 1 First saved by jbond00747 | 1 days ago      blog-j: Symbolizing, Coding, Objectifying, Processing &quot; ASP.NET&#8230; First saved by JamesNintendoNerd | 2 days ago      Pandora Prototype in Action First saved by [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Asha</title>
		<link>http://blog.jasonnussbaum.com/?p=104#comment-349323</link>
		<dc:creator>Asha</dc:creator>
		<pubDate>Mon, 31 Mar 2008 09:19:48 +0000</pubDate>
		<guid>http://blog.jasonnussbaum.com/?p=104#comment-349323</guid>
		<description>Hi,
How can I embed windows media player in my IE using ashx.
I have done it using html tags, but would like to know if there is a way to embed using ashx file.</description>
		<content:encoded><![CDATA[<p>Hi,<br />
How can I embed windows media player in my IE using ashx.<br />
I have done it using html tags, but would like to know if there is a way to embed using ashx file.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dylan</title>
		<link>http://blog.jasonnussbaum.com/?p=104#comment-339842</link>
		<dc:creator>Dylan</dc:creator>
		<pubDate>Mon, 03 Mar 2008 22:30:19 +0000</pubDate>
		<guid>http://blog.jasonnussbaum.com/?p=104#comment-339842</guid>
		<description>I just implemented this on my test site. I'm not sure if this project is still live since there hasn't been any comments in a year but I've been trying to find a simple resizer using the httphandler and this one worked like a charm (I'm not a developer) on my first try. 

In the list of features to be added I would go with a cache timer for the generated images.

Thanks for this.

-Dylan</description>
		<content:encoded><![CDATA[<p>I just implemented this on my test site. I&#8217;m not sure if this project is still live since there hasn&#8217;t been any comments in a year but I&#8217;ve been trying to find a simple resizer using the httphandler and this one worked like a charm (I&#8217;m not a developer) on my first try. </p>
<p>In the list of features to be added I would go with a cache timer for the generated images.</p>
<p>Thanks for this.</p>
<p>-Dylan</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomas</title>
		<link>http://blog.jasonnussbaum.com/?p=104#comment-49644</link>
		<dc:creator>Tomas</dc:creator>
		<pubDate>Mon, 23 Apr 2007 10:49:27 +0000</pubDate>
		<guid>http://blog.jasonnussbaum.com/?p=104#comment-49644</guid>
		<description>Hello,

Is it possible to resize images with an bmp extension?

Thanks and keep up the good work!
T;</description>
		<content:encoded><![CDATA[<p>Hello,</p>
<p>Is it possible to resize images with an bmp extension?</p>
<p>Thanks and keep up the good work!<br />
T;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Luis Mauricio</title>
		<link>http://blog.jasonnussbaum.com/?p=104#comment-46721</link>
		<dc:creator>Luis Mauricio</dc:creator>
		<pubDate>Thu, 05 Apr 2007 11:43:45 +0000</pubDate>
		<guid>http://blog.jasonnussbaum.com/?p=104#comment-46721</guid>
		<description>Thank You for this!!

It really sucks that images don't resize like they do in windows.

I've donne and utility to resize the images but it doesnt work in firefox.

This is great!

Thank you
LM</description>
		<content:encoded><![CDATA[<p>Thank You for this!!</p>
<p>It really sucks that images don&#8217;t resize like they do in windows.</p>
<p>I&#8217;ve donne and utility to resize the images but it doesnt work in firefox.</p>
<p>This is great!</p>
<p>Thank you<br />
LM</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jason</title>
		<link>http://blog.jasonnussbaum.com/?p=104#comment-22702</link>
		<dc:creator>jason</dc:creator>
		<pubDate>Mon, 13 Nov 2006 21:40:35 +0000</pubDate>
		<guid>http://blog.jasonnussbaum.com/?p=104#comment-22702</guid>
		<description>Hrm. I've run this without a problem on Win2003 - in fact, that's the primary platform I've deployed it on. The only things I can think to confirm are that you're running v1.1 or greater of the .NET Framework, that you're ASP.NET account has write access on folders, and that you have the correct settings in your Web.config. If none of those fix it, let me know.

Also, check your error and IIS logs to see if you can pull a specific error message - that always speeds up the debugging process.

Last but not least...I do have some fixes/updates that I hope to roll out in the next few weeks. Not the least of which might include an upgrade to .NET 2.0 (while still supporting .NET 1.1).</description>
		<content:encoded><![CDATA[<p>Hrm. I&#8217;ve run this without a problem on Win2003 - in fact, that&#8217;s the primary platform I&#8217;ve deployed it on. The only things I can think to confirm are that you&#8217;re running v1.1 or greater of the .NET Framework, that you&#8217;re ASP.NET account has write access on folders, and that you have the correct settings in your Web.config. If none of those fix it, let me know.</p>
<p>Also, check your error and IIS logs to see if you can pull a specific error message - that always speeds up the debugging process.</p>
<p>Last but not least&#8230;I do have some fixes/updates that I hope to roll out in the next few weeks. Not the least of which might include an upgrade to .NET 2.0 (while still supporting .NET 1.1).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Fred</title>
		<link>http://blog.jasonnussbaum.com/?p=104#comment-22591</link>
		<dc:creator>Fred</dc:creator>
		<pubDate>Sun, 12 Nov 2006 16:13:32 +0000</pubDate>
		<guid>http://blog.jasonnussbaum.com/?p=104#comment-22591</guid>
		<description>Hi,

I have managed to get this working on my test machine. It works great. However when uploading to my windows 2003 server it just simply dosent work. I tried setting write permission for everyone on the images directory, still no luck. 

Can you advise?

Thanks
Fred.</description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>I have managed to get this working on my test machine. It works great. However when uploading to my windows 2003 server it just simply dosent work. I tried setting write permission for everyone on the images directory, still no luck. </p>
<p>Can you advise?</p>
<p>Thanks<br />
Fred.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jason</title>
		<link>http://blog.jasonnussbaum.com/?p=104#comment-11726</link>
		<dc:creator>jason</dc:creator>
		<pubDate>Wed, 10 May 2006 13:31:31 +0000</pubDate>
		<guid>http://blog.jasonnussbaum.com/?p=104#comment-11726</guid>
		<description>Hrm. Not sure about the save as dialog...what browser are you using? Do you have a url I can take a look at?

I'll see what I can do about it, though. I think it's about time to update this sucka anyway. :)</description>
		<content:encoded><![CDATA[<p>Hrm. Not sure about the save as dialog&#8230;what browser are you using? Do you have a url I can take a look at?</p>
<p>I&#8217;ll see what I can do about it, though. I think it&#8217;s about time to update this sucka anyway. <img src='http://blog.jasonnussbaum.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: shailendra</title>
		<link>http://blog.jasonnussbaum.com/?p=104#comment-11724</link>
		<dc:creator>shailendra</dc:creator>
		<pubDate>Wed, 10 May 2006 11:17:20 +0000</pubDate>
		<guid>http://blog.jasonnussbaum.com/?p=104#comment-11724</guid>
		<description>hei,

thank you for giving a easy method for resizing picture but i have same problem.it is possible to save file without clicking  save as dialog box.

shailendra
india</description>
		<content:encoded><![CDATA[<p>hei,</p>
<p>thank you for giving a easy method for resizing picture but i have same problem.it is possible to save file without clicking  save as dialog box.</p>
<p>shailendra<br />
india</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: AlexS</title>
		<link>http://blog.jasonnussbaum.com/?p=104#comment-9315</link>
		<dc:creator>AlexS</dc:creator>
		<pubDate>Fri, 27 Jan 2006 00:59:33 +0000</pubDate>
		<guid>http://blog.jasonnussbaum.com/?p=104#comment-9315</guid>
		<description>Good stuff. I look forward to the future revision

Alex</description>
		<content:encoded><![CDATA[<p>Good stuff. I look forward to the future revision</p>
<p>Alex</p>
]]></content:encoded>
	</item>
</channel>
</rss>
