2014-01-29 39 views
1

我有功能,其將創建縮略圖圖像:轉換位圖數據轉換成所述圖像標籤格式

Image photo=System.Drawing.Image.FromStream(myFile.InputStream); 

Bitmap bmp = new Bitmap(100, 100); 
Graphics graphic = Graphics.FromImage(bmp); 
graphic.InterpolationMode = InterpolationMode.HighQualityBicubic; 
graphic.SmoothingMode = SmoothingMode.HighQuality; 
graphic.PixelOffsetMode = PixelOffsetMode.HighQuality; 
graphic.CompositingQuality = CompositingQuality.HighQuality; 
graphic.DrawImage(photo, 0, 0, 100, 100); 

BMP圖像將是位圖格式。
如何轉換它,以便我分配圖像標籤並在頁面上顯示?

回答

1

您可以通過以下方式返回字節數組。

MemoryStream stream = new MemoryStream(); 
bmp.Save(stream, ImageFormat.Jpeg); 
Byte[] buffer = new byte[0]; 
buffer = stream.ToArray(); 
return buffer; 

並使用通用處理程序,您可以在圖像標記中顯示此數據。

0

我從建一些想法的一個片段,這個完美的作品:

Bitmap original = new Bitmap(@"C:\path\img.jpg"); 
Rectangle srcRect = new Rectangle(0, 0, 100, 100); 
Bitmap cropped = (Bitmap)original.Clone(srcRect, original.PixelFormat); 
byte[] imgbytes;  
using (MemoryStream stream = new MemoryStream()) 
{ 
     cropped.Save(stream, System.Drawing.Imaging.ImageFormat.Png); 
     imgbytes = stream.ToArray(); 
} 
<img src="@String.Format("data:image/png;base64,{0}", Convert.ToBase64String(imgbytes))" /> 

在矩形的偏移量爲(0,0)和農作物100×100像素從一部開拓創新。