- - PR -
画像をリサイズし表示する“低負荷な”方法
1
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2003-11-19 16:18
いつもお世話になっております。hirasaneです。
Webアプリを開発しているのですが(VB.NET+ASP.NET使用)、 画像をリサイズして表示する方法について、質問致します。 DBから画像パスと画像名を取得し、サムネイル表示をしたいのですが、 このとき元画像の縦横比率を一定のまま小さく表示したいです。 この方法として、画像をリサイズしたものを一度テンポラリフォルダ に保存するのではなく、そのまま表示する方法はありますでしょうか? アプリ利用者に書き込み権限を与えたくありませんし、 そもそもサムネイル表示するのに、そこまでの処理を行いたくありません。 どうかお知恵をお貸しくださいませ。 | ||||
|
投稿日時: 2003-11-19 17:00
まず画像用のWebPageを作成。(例:Photo.aspx)
Photo.aspxのPage_Loadで 1.画像ファイルを読込み 2.Graphicsを使用してサイズを修正 3.Response.BinaryWriteで画像を送信 でいけると思います。 | ||||
|
投稿日時: 2003-11-19 17:14
済みません。説明不足だったかもしれません。
画像表示には、ImageButtonを使用しています(クリック イベントが必要なため)。 つまり、ImageButtonの縦・横サイズを動的に変更したいのです。 他の方法でもOKなのですが、クリックイベントが必要です。 クリックイベントはJavaScriptで代替できますが、 イベントのコードを書かねばなりませんので、 先に画像を表示するためのオブジェクトの設置は必要です。 | ||||
|
投稿日時: 2003-11-19 17:17
HTMLのimg要素にwidthとheight属性を適切に設定すれば(元のイメージが100*100なら、10*10など)、ブラウザ側で縮小表示してくれますが、ダメですか?
ImageButtonでも同じ。勝手に縦横比を計算してくれるみたい。 [ メッセージ編集済み 編集者: Jitta 編集日時 2003-11-19 17:26 ] | ||||
|
投稿日時: 2003-11-19 17:27
burton999さん、Jittaさん、ありがとうございます。
(burton999さん、先ほどお礼忘れてました。済みません) 画像によって、縦横比が違うので上手くいきません。 例えば、ImageButtonが100*100で、画像が200*150でも 縦横比が無視されて、100*100で表示されてしまいます・・・ | ||||
|
投稿日時: 2003-11-19 17:50
Image.GetThumbnailImage メソッドはどうですか?
詳しくは、MSDN。 | ||||
|
投稿日時: 2003-11-19 20:16
やむさん、ありがとうございます。
ImageButtonコントロールを動的に縦横幅を指定する方法 が分かりました。 Unitを使えばよいみたいですが、まだ詳しくは理解できてません。 Image.GetThumbnailImageを使うのも、縦横のサイズを計算して 縦横幅を指定するのは同じなので、元画像サイズをBitmap or Image で取得し、リサイズし、Unitを使って縦横幅を指定することにします。 | ||||
|
投稿日時: 2003-11-19 21:00
よくわからないですが、ImageButton.WidthとHeightを指定すれば?私が試した画像、よく見ると正方形でした。すみません。 | ||||
1
