次のコード行を取得HttpPostedFileBase
して画像に変換します。
Encoder Parameteres をいじって画像のサイズを変更しようとしましたが、これを行うことができないようです。
画像のサイズを 250x250 に変更する最良の方法は何ですか?
また、ランダムな場所ではなく、画像の中央を 250x250 の長方形にすることをお勧めします。
データベースに保存される画像を変換して保存する最もスペース効率の良い方法は何ですか?
model.Image
型ですのでご注意くださいHttpPostedFileBase
。
var image = Image.FromStream(model.Image.InputStream, true, true);
ImageCodecInfo jpgInfo = ImageCodecInfo.GetImageEncoders()
.Where(codecInfo => codecInfo.MimeType == "image/jpeg").First();
using (EncoderParameters encParams = new EncoderParameters(1))
{
encParams.Param[0] = new EncoderParameter(Encoder.Quality, (long)50);
//quality should be in the range [0..100]
using (var ms = new MemoryStream())
{
// Convert Image to byte[]
image.Save(ms, ImageFormat.Jpeg);
byte[] imageBytes = ms.ToArray();
// Convert byte[] to Base64 String
string base64String = Convert.ToBase64String(imageBytes);
image64 = base64String;
}
}