5

私の ASP.Net MVC 4 アプリケーションには、ユーザーが画像の上にカーソルを置いてフルサイズのプレビューを表示できるビューがあります。それはうまくいきます。

現在、次のように、ユーザーがホバーする画像を静的な幅と高さ 50 と 50 に設定しています。

<img id="@Model.Value" class="image-preview" height="50" width="50" src="@Model.ImageString" />

@Model.ImageStringこのアクションによって作成される値です:

[HttpGet]
public string GetImageUrl(Guid fileId)
{
    var file = db.FetchedFiles
        .First(ff => ff.ID == fileId);

    return "data:image/*;base64," + Convert.ToBase64String(file.Data);
}

上記のアクションは、私が変更したいものです。Convert.ToBase64String(file.Data)元のファイルと同じ縦横比のサムネイル画像として出力するにはどうすればよいですか?

前もって感謝します!

4

2 に答える 2

0

サーバー上でサイズ変更された新しい画像を返す必要があります。

最も簡単な方法は、ImageResizingを使用し、単にファイル ストリームを とともに渡し、ResizeSettings必要な寸法を指定することです。次に、サイズ変更されたファイルをbase64.

ライブラリは非常に広範で、多くの例で十分に文書化されているため、ソリューションを見つけたり、ニーズに合わせて調整したりできるはずです.

ここに一例があります: http://imageresizing.net/docs/howto/upload-and-resize

于 2013-08-15T17:42:15.480 に答える