2013-02-25 2 views
0

와 이미지를 렌더링 writeablebitmap. 그러나이 코드는 항상 검은 색으로 이미지를 렌더링합니다. 전경은 괜찮습니다. 다음 구조로 테스트했습니다 :는 항상 내가 다음 코드를 검정색 배경

Canvas 
    Textblock - with black foreground 
    Textblock - with black foreground 

어디에서 문제가 발생합니까?

답변

0

캔버스 크기를 지정해야합니다. 그렇지 않으면 기본 너비와 높이가 0이므로 투명 WriteableBitmap이됩니다.

bmp.Render(new Canvas() { Background = new SolidColorBrush(Colors.White), Width=(int)size.Height, Height=(int)size.Height }, null); 
+0

그렇다면 내 코드가 항상 작동하지 않습니다. 그러나 어두운 전화 테마에서 작동하며 조명에서 작동하지 않습니다. var backColor = Application.Current.Resources [ "PhoneBackgroundColor"]. ToString(); var foreColor = Application.Current.Resources [ "PhoneForegroundColor"]. ToString(); 색상을 얻는 방법입니다. –

+0

그게 또 다른 문제입니다. 현재 사용자 테마 (밝은 색 또는 어두운 색)를 기반으로 캔버스의 배경색을 변경해야합니다. –

+0

나를 이해하지 못하는 것 같습니다. 휴대 전화 테마가 어두울 때 - 앱은 검은 배경과 흰색 전경으로 이미지를 렌더링합니다. 휴대 전화 테마가 밝을 때 - 앱이 검은 색 배경의 빈 이미지를 렌더링합니다. 코드는 변경되지 않았지만 결과는 다릅니다 –