2012-12-19 6 views
0

저는 안드로이드 그래픽을 처음 사용하고 있으며이 문제를 포괄적으로 고수하고 있습니다. 나는 드로잉 앱을 개발하고 있으며 기본 작업을 수행하면 더 시원하게 확장 할 것입니다.안드로이드 : 캔버스 drawPath 메서드가 투명 대신 단색 배경을 그립니다.

기존의 모든 경로를 포함하는 기존 이미지 위에 경로를 그리려하지만 경로의 경계로 표시되는 사각형은 동시에 솔리드 모양으로 그려지며 배경 이미지의 비트를 덮어 씁니다. .

invalidate 
(
    (int) (dirtyRect.left - HALF_STROKE_WIDTH), 
    (int) (dirtyRect.top - HALF_STROKE_WIDTH), 
    (int) (dirtyRect.right + HALF_STROKE_WIDTH), 
    (int) (dirtyRect.bottom + HALF_STROKE_WIDTH) 
); 

와의

것은 내 onDraw는 내가있어에게 다음을 :

if (drawing.size() > 0) //if there are paths 
{ 
    canvas.drawPath(drawing.get(drawing.size() - 1), paint); //draw the latest path 
} 

난 그냥 그릴 수 내가 필요한 갱신을 내 캔버스를 무효화하고 그리기 위해 다음 명령을 사용하고

내 도면의 모든 경로 (경로 객체의 LinkedList로 정의 됨)는 매우 느립니다. 캔버스에 최신 경로를 그려야합니다. 경로 주변에 어리석은 직사각형이 나타나지 않습니다.

drawPath를 호출하기 전에 canvas.drawColor (Color.TRANSPARENT)를 시도했지만 도움이되지 않았습니다.

도와주세요!

답변

0

포터 터프 모드를 들여다 보면, 블렌드가 가능합니다.

관련 문제