2012-02-26 12 views
1

画像をDeep Zoom MultiScaleImageに動的に配信するアプリケーションを構築しようとしています。例えば、大きな画像の特定のコーナーの画像が要求されると、その画像は自動的にレンダリングされるべきである。Silverlight Deep Zoom:要求通りに画像を生成する

レンダリングは私が実装するものです。しかし、私のコードは、MultiScaleImageが画像の角を要求したときに呼び出される必要があります。これをどのように実装すればよいですか?

これについてStackOverflowで検索すると、DeepZoomToolsを使用してディープズーム画像の動的生成を説明する結果が得られます。私は完全にはわからないが、これは私が望むものではない。私は個々にリクエストされたときにのみイメージを生成し、それらのすべてをオンザフライで生成しないことを望みます。

EDIT:これを実現する方法の1つを説明する例を示します。実装方法はわかりません。

MultiScaleImageが画像5/1_0.pngを要求した場合、深いズームが5番目のズームレベルの大きな画像の2番目の列の最初の画像になります(深いズームの実際のズーム値には関係しません) )。 DeepZoomがこのファイルを要求すると、私は "5"、 "1"、 "0"のパラメータを見て生成します。

+1

Web Genericハンドラにリクエストを送信するためにルーティング(例:http://www.4guysfromrolla.com/articles/012710-1.aspx)を使用できます。 –

+0

(私の悪い英語のため申し訳ありません) - これが欲しいかどうかは分かりませんが、Pivo​​t ViewerのJITサンプルではこのようなことがあります。ここを見てください(http://geekswithblogs.net/tokke/archive/2010/08/17/runtime-pivotviewer-collection-creation.aspx) - この記事のサンプルへのリンクが壊れています。http:http ://www.silverlight.net/learn/data-networking/pivot-viewer/download-just-in-time-tools# ピボットフォーマットがdeepzoomと同じかどうかわかりませんが、おそらくあなたにスタートを与えるでしょうポイント: – Leo

+0

@AndrewMortonそれは私が欲しいものとまったく同じように見えます。あなたはそれを私がそれを受け入れることができるように答えにしたいかもしれません。また、ASPXページにあるハンドラにリクエストをルーティングできるようになったので、HTMLコンテンツではなく画像で返信する方法を知りました。私は、応答ヘッダーを変更する必要があると考えています。私はこれをあまり見ていない。 編集:OK素晴らしいです!私が欲しかったものが見つかりました:http://www.sitepoint.com/generating-asp-net-images-fly/ – Salil

答えて

1

@サリル:致します。 ルーティング(例:http://4guysfromrolla.com/articles/012710-1.aspx)を使用して、リクエストをWeb汎用ハンドラに送ることができます。ジェネリックハンドラは、ページのライフサイクルで多くの作業をする必要がないため、aspxページよりも少し適していることに注意してください。

+0

遅く受け入れて申し訳ありません。忙しかったです。 – Salil

+0

私はそれを働かせました。しかし、私が生成する画像はキャッシュされています。スタックのどの部分がキャッシュされているのかわかりません。それはブラウザですか?この場合、Silverlightが深いズームイメージをキャッシュしないようにするにはどうすればよいですか? – Salil

+1

ハンドラ(http://en.wikipedia.org/wiki/List_of_HTTP_header_fields#Avoiding_caching)でレスポンスヘッダを設定することから始めます。それが機能しない場合は、 "silverlight can caching"のWeb検索を行うことができます。 –

関連する問題