렌더링의 많은 반복된 이미지를 더 많거나 적은 성능보다는 브러쉬를 사용하에 WPF?

StackOverflow https://stackoverflow.com/questions/2059262

문제

응용 프로그램 우리 회사에서 작업하고 현재 디스플레이 많은 사각형 모양으로 그라데이션을 그리는'타일'.내부 면담에 대해왔는 제기된 질문이었습니다.이 타일은 약 100x200 픽셀,그리고 중 그라데이션 음영 빨간색,노란,녹색입니다.주어진 시간이 있을 수 있습의 100 까지 이 타일에서는 화면입니다.는 것은 더 성능이 우리를 위해 이미지를 만들에 대한 각(빨간색,노란색,녹색)하고 그것을 반복하고 필요할 때,또는 나을 것이 우리를 위해 계속 그들을 그림을 사용하여 표준 WPF 브러쉬?

편집:을 명확히 하기 위해,그라디언트 브러시는 우리가 사용하는 LinearGradientBrush.

도움이 되었습니까?

해결책

에서의 경험,그들을 그리는 브러쉬를 사용하는 것이 훨씬 더 나은 성능을 제공합니다.오버헤드의 로드 타일 이미지와 그들을 렌더링이 큰 비교하여 렌더링이 가득한 사각형입니다.

다른 팁

이를 해결하는 유일한 방법은 두 가지 방법을 모두 시도하고 각 접근 방식의 성능을 측정하는 것입니다.

렌더 루프에 시간에 코드를 추가하고 결과를 파일에 로그인 한 다음 1000 (또는 100,000)의 리 그리프를 강제하여 현실적인 그림을 얻을 수 있어야합니다.

내 직감은 그게 LinearGradientBrush 이미지를로드하는 것보다 더 빠릅니다 (자원에서도). 그러나 나는 기꺼이 잘못되었다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top