2011-10-10 3 views
0

빨간색 배경의 WPF로 그리드를 만들었습니다. 그리드에는 고정 크기의 투명한 Canvas가 포함되어 있습니다. Canvas를 Image로 내보내는 중에 검정색 배경 이미지가 나타납니다. 그러나 캔버스에 색이있는 경우 (예 : 흰색 또는 빨간색) 올바른 이미지를 얻고 있습니다. 캔버스에 투명한 색이있는 경우 왜 이미지가 검은 배경으로 생성되는지 설명해주십시오.투명 캔버스를 WPF에 저장하는 중 문제가 발생했습니다.

예 : 캔버스의

Grid grid = new Grid(); 
      grid.Background = new SolidColorBrush(Colors.Red); 
      grid.Width = 500; 
      grid.Height = 300; 

      Canvas c = new Canvas(); 
      c.Width = 500; 
      c.Height = 300; 
      c.Background = new SolidColorBrush(Colors.Transparent); 
      c.MouseLeftButtonUp += new MouseButtonEventHandler(c_MouseLeftButtonUp); 

      grid.Children.Add(c); 

      LayoutRoot.Children.Add(grid); 

내부 된 MouseEvent 핸들러, 나는 JPG 이미지로 저장하고있다.

+1

xaml.cs 파일에 이미지를 저장하는 데 사용하는 코드를 게시 할 수 있습니까? – gprasant

답변

2

캔버스의 MouseEvent 핸들러 내에서 jpg 이미지로 저장합니다.

PNG으로 저장하십시오. 이러한 유형의 이미지는 투명한 배경을 저장하는 데 전문화되어 있습니다.

+0

하지만 왜 jpg로 가능하지 않습니까? – Lohit

+0

어떻게 ** jpg ** 형식으로 .... (투명하지 않고) ....이 봐 http://www.talkgraphics.com/showthread.php?22385-How-do-I -make-jpeg-image-background-transparent –

관련 문제