<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Andrey Shchekin &#187; Zoho</title>
	<atom:link href="http://blog.ashmind.com/category/zoho/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.ashmind.com</link>
	<description></description>
	<lastBuildDate>Mon, 15 Mar 2010 18:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>Putting Web snapshots to practical use</title>
		<link>http://blog.ashmind.com/2008/09/28/putting-web-snapshots-to-practical-use/</link>
		<comments>http://blog.ashmind.com/2008/09/28/putting-web-snapshots-to-practical-use/#comments</comments>
		<pubDate>Sun, 28 Sep 2008 10:50:04 +0000</pubDate>
		<dc:creator>Andrey Shchekin</dc:creator>
				<category><![CDATA[ASP.Net]]></category>
		<category><![CDATA[Google Chrome]]></category>
		<category><![CDATA[Solutions]]></category>
		<category><![CDATA[Zoho]]></category>

		<guid isPermaLink="false">http://blog.ashmind.com/index.php/2008/09/28/putting-web-snapshots-to-practical-use/</guid>
		<description><![CDATA[I was always interested if the service that, for example, WebSnapr provides is practically useful. Having snapshots of a linked pages looks very cool indeed, but does not really provide much information, at least for me. But recently I have found a nice use case for a similar service. For tables in my IoC Frameworks [...]]]></description>
			<content:encoded><![CDATA[<p>I was always interested if the service that, for example, <a href="http://www.websnapr.com/">WebSnapr</a> provides is practically useful. Having snapshots of a linked pages looks very cool indeed, but does not really provide much information, at least for me.</p>
<p>But recently I have found a nice use case for a similar service. For tables in my <a href="http://blog.ashmind.com/index.php/2008/08/19/comparing-net-di-ioc-frameworks-part-1/">IoC Frameworks</a> <a href="http://blog.ashmind.com/index.php/2008/09/08/comparing-net-di-ioc-frameworks-part-2/">posts</a>, I was using parts of a <a href="http://sheet.zoho.com">Zoho</a> spreadsheet embedded through an iframe. However, Google Code wikis do not allow iframe embedding.</p>
<p>The <em>easy</em> solution was to use built-in wiki table markup, but in this case I would lose all color coding and ability to download the whole sheet as Excel. The <em>interesting</em> solution was to embed <em>snapshot</em> of an iframe, as an image. This would also allow me to solve the iframe problem for RSS readers that <a href="http://blog.ashmind.com/index.php/2008/08/20/google-reader-and-zoho-spreadsheets/">do not support them</a>.</p>
<p>My original idea was to use Firefox or Chrome (via <a href="http://code.google.com/chromium/">Chromium</a> project) to do the snapshots, but I have not managed to use the <a href="http://www.mono-project.com/WebBrowser">Mono.Mozilla</a> on Windows and I was too lazy to dive into Chromium.</p>
<p>IE was the simplest remaining choice, so using information from the <a href="http://www.eggheadcafe.com/tutorials/aspnet/b7cce396-e2b3-42d7-9571-cdc4eb38f3c1/build-a-selfcaching-asp.aspx">great article</a> of Peter Bromberg, I have built my own implementation of web snapshotting service. The main difference between my snapshots and other services is that my service can actually determine the correct size of the snapshot.</p>
<p>For example, this is a snapshot of my IoC frameworks table:</p>
<p><a style="display: inline-block; max-width: 100%; overflow: hidden" href="http://sheet.zoho.com/publishrange.do?id=a2b5ce1196a44db265f0466150348bc1"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" src="http://snapshots.ashmind.com/?url=http://sheet.zoho.com/publishrange.do?id=a2b5ce1196a44db265f0466150348bc1&amp;stub=this_is.png"></a></p>
<p>You can click it to see the source of the snapshot. As you can see, it has correct size (instead of being fixed to 1024&#215;768 or another <em>screen</em> size). On an unrelated note, it is an updated version of framework comparison, now including <a href="http://code.google.com/p/linfu/">LinFu</a> (which was updated to pass <strong>all</strong> feature tests).</p>
<p>In Google Code it looks like <a href="http://code.google.com/p/net-ioc-frameworks/wiki/Configuration">this</a>.</p>
<p>Additional interesting usage for this would be iframe-widget embedding to locations that do not support iframes. For example, it is possible to embed a list of RSS feed headers or twitter messages in Google Code using this technique.</p>
<p>You can svn-download source code from <a href="http://ashmind-web-ui.googlecode.com/svn/trunk/AshMind.Web.Snapshots">Google Code</a>. It is really bare for now, no good error-handling and no resizing support (all snapshots are always displayed in full size). However it may be a good starting point.</p>
<p>Looking at this project, I think that it would be very interesting to have a .NET wrapper for Chrome APIs that would allow anyone to automate Chrome, which probably will make snapshot extraction much faster and not COM-reliant.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.ashmind.com/2008/09/28/putting-web-snapshots-to-practical-use/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>

