2013-04-16 60 views
1

我的應用程序是asp.net MVC3;目前我可以用在會話中使用的圖像處理和存儲圖像顯示DCIOM MPR圖像:在asp.net MVC視圖中顯示DICOM MPR圖像c#

objImage = im.Bitmap(outputSize, System.Drawing.Imaging.PixelFormat.Format24bppRgb, m); 
context.Response.ContentType = "image/png"; 
objImage.Save(context.Response.OutputStream,  
System.Drawing.Imaging.ImageFormat.Png); 

它工作正常,但是當我旋轉圖像的響應速度很慢!我想存儲DICOM MPR在controlloer爲使用會話變量如下:

............ 
DicomImageMPR mpr1 = new DicomImageMPR(volume); 
mpr1.SetViewPlane(new Point3D(), new Vector3D(0, 1, 0), new Vector3D(0, 0, -1)); 
mpr1.Interpolation = InterpolationType3D.Trilinear; 
MySession.Current.mpr1 = mpr1; 

我的問題是我怎麼可以把圖像中的viewbag在視圖中顯示?我會感謝您的建議,並提前致謝。

回答

2

我解決它通過使用下列內容:

 public ActionResult GenerateImage() 
      { 
       FileContentResult result; 
       System.Drawing.Image objImage = null; 
       .... 
       mpr = MySession.Current.mpr2; 
       im = mpr; 
       ... 
       objImage = im.Bitmap(outputSize, 
       System.Drawing.Imaging.PixelFormat.Format24bppRgb, m); 
       using (var memStream = new MemoryStream()) 
       { 
        objImage.Save(memStream, System.Drawing.Imaging.ImageFormat.Png); 
        result = this.File(memStream.GetBuffer(), "image/png"); 
       } 

       return result; 
      } 

在查看:

<img src='<%=Url.Action("GenerateImage")%>' alt="" id="dImage"/> 

希望這可以幫助別人。