2011-03-04 1 views

답변

5

이와 비슷한?

Bitmap bmp = new Bitmap(300, 300); 
Graphics g = Graphics.FromImage(bmp); 

g.Clear(Color.Transparent); 
g.FillRectangle(Brushes.Red, 100, 100, 100, 100); 

g.Flush(); 
bmp.Save("test.png", System.Drawing.Imaging.ImageFormat.Png); 

당신은 물론 이미지의 내용으로 놀러해야 할 것

(here에서)하지만 그래픽 네임 스페이스는 아마 당신이 필요의 대부분을 가지고있다.

+1

무엇인가의 이유로, 나는 Clear 메소드를 발견하지 못했습니다. 필자는 항상 수동으로 FillRectangle을 전체 표면에 사용했습니다. 감사합니다. kprobst. :) – Jonathan

5

.NET 프레임 워크에서 Bitmap 및 기타 그래픽 관련 클래스를 사용하면됩니다.

 Bitmap bmpImage = new Bitmap(width, height); 
     Graphics gr = Graphics.FromImage(bmpImage); 
     //Draw using gr here 

     //stream to the client 
     Response.ContentType = "image/png"; 

     //write to memory stream first, png can only be written to seekable stream 
     using(MemoryStream memStream = new MemoryStream()) 
     { 
      bmpImage.Save(memStream, ImageFormat.Png); 
      memStream.WriteTo(Response.OutputStream); 
     } 
     bmpImage.Dispose(); 
+0

모든 System.Drawing 객체 (Graphics, Bitmap)에서 using 절을 사용해야합니다. MemoryStream은 심지어 아이러니 컬하게도 처리 시간을 전혀 내지 않습니다. –

관련 문제