2012-02-19 70 views
5

由於GWT畫布繪製已遍佈地圖,讓我明確的說我使用這個:GWT畫布:如何改變線條顏色

import com.google.gwt.canvas.client.Canvas; 

的問題是,如果我畫一條黑線再變紅,第一條線也變紅。

// draw line in black 
context.moveTo(xScale(-0.5), yScale(0.0)); 
context.lineTo(xScale(15.0), yScale(0.0)); 
context.stroke(); 

// change to red 
context.setStrokeStyle(CssColor.make(255,0,0)); 


context.moveTo(xScale(0.0), yScale(20.0)); 
context.lineTo(xScale(0.0), yScale(-20.0)); 
context.stroke(); 

// both lines appear in red 

什麼是改變筆顏色的正確方法?

回答

4

調用context.beginPath()之前,每個新的形狀/線與不同的顏色應該解決您的問題。

// draw line in black 
context.beginPath(); 
context.moveTo(xScale(-0.5), yScale(0.0)); 
context.lineTo(xScale(15.0), yScale(0.0)); 
context.stroke(); 

context.beginPath(); 
// change to red 
context.setStrokeStyle(CssColor.make(255,0,0)); 

context.moveTo(xScale(0.0), yScale(20.0)); 
context.lineTo(xScale(0.0), yScale(-20.0)); 
context.stroke(); 

// both lines appear in red 

基本上beginPath方法()按下的狀態下

+0

感謝。很棒。 - Seadrive – SeaDrive 2012-02-19 20:17:23