2009-07-04 6 views
7

WPF의 출력을 이미지 파일, jpg 또는 기타와 같은 캔버스라고 쓸 수있는 방법이 있습니까?WPF 출력을 이미지 파일에 작성하십시오.

직사각형에 BitmapEffects를 사용하고 모서리를 반경으로 사용하려면 WPF를 사용하여 배경을 만들고 싶습니다.

웹 페이지에서 비트 맵을 사용하고 싶습니다.

이것이 가능합니까?

말콤

답변

9

나는이 모든 here에 대한 블로그 게시물이 있습니다. 이 기사의 코드는 다음과 같습니다.

Rect rect = new Rect(canvas.RenderSize); 
    RenderTargetBitmap rtb = new RenderTargetBitmap((int)rect.Right, 
    (int)rect.Bottom, 96d, 96d, System.Windows.Media.PixelFormats.Default); 
    rtb.Render(canvas); 
    //encode as PNG 
    BitmapEncoder pngEncoder = new PngBitmapEncoder(); 
    pngEncoder.Frames.Add(BitmapFrame.Create(rtb)); 

    //save to memory stream 
    System.IO.MemoryStream ms = new System.IO.MemoryStream(); 

    pngEncoder.Save(ms); 
    ms.Close(); 
    System.IO.File.WriteAllBytes("logo.png", ms.ToArray()); 
    Console.WriteLine("Done"); 
관련 문제