2011-12-18 10 views
14

में आर्क के लिए अलग-अलग fillStyle रंग मुझे लगता है कि इसका समाधान बहुत आसान है, और अगर यह दर्दनाक रूप से स्पष्ट है, तो पहले से माफ़ी मांगें, लेकिन मुझे लगता है कि दो अलग-अलग आर्कों के लिए दो अलग-अलग fillStyles को सेट करने का तरीका नहीं लगता है। ..मैं सिर्फ अलग-अलग रंग मंडलियों को आकर्षित करने में सक्षम होना चाहता हूं। नीचे मेरे पास कैनवास में अन्य आकार/ड्राइंग विधियों के साथ सामान्य रूप से ऐसा होता है, लेकिन आर्क के साथ किसी कारण से यह अंतिम fillStyle दोनों arcs को सेट करता है।कैनवास

ctx.fillStyle = "#c82124"; //red 
ctx.arc(15,15,15,0,Math.PI*2,true); 
ctx.fill(); 

ctx.fillStyle = "#3370d4"; //blue 
ctx.arc(580,15,15,0,Math.PI*2,true); 
ctx.fill(); 

उत्तर

31

मुझे लगता है कि आप प्रारंभ और अंत पथ विवरण खो रहे हैं। निम्नलिखित (यह, jsfiddle में मेरे लिए काम करता see here) की कोशिश करो

ctx.fillStyle = "#c82124"; //red 
ctx.beginPath(); 
ctx.arc(15,15,15,0,Math.PI*2,true); 
ctx.closePath(); 
ctx.fill(); 

ctx.fillStyle = "#3370d4"; //blue 
ctx.beginPath(); 
ctx.arc(580,15,15,0,Math.PI*2,true); 
ctx.closePath(); 
ctx.fill(); 
+0

आह, ज़ाहिर है !!! मैंने सोचा कि यह कुछ स्पष्ट है। किसी कारण से मैंने सोचा कि आपको केवल लाइन/वक्र ड्राइंग करते समय शुरू/बंद करें की आवश्यकता है, लेकिन मुझे लगता है कि यह हमेशा जरूरी है :) thnx इतना! – Nick

1

ध्यान दें कि पथ सिर्फ ज्यामिति है। आप तक .fillStyle कभी भी सेट कर सकते हैं।

+0

'fillStyle' फ़ंक्शन नहीं है – 1j01

+0

ओह! फिक्स्ड। धन्यवाद! –