यह स्थिति स्पष्ट है, तो मुझे एक तस्वीर के साथ उदाहरण देकर स्पष्ट करने देने के लिए मुश्किल है। स्क्रीन को काले रंग से साफ़ किया गया है, लाल और हरे रंग के बक्से खींचे जाते हैं, फिर पथ खींचा जाता है। here के रूपरेखा के कारणों के लिए, अब तक एकमात्र फिक्स जो मैंने पाया है, बॉक्स की रेखा चौड़ाई को 2 पिक्सल तक सेट कर रहा था।लाइन टू() आंतरिक पिक्सल क्यों बदलता है? <img src="https://i.stack.imgur.com/fKkED.png" alt="pixel lightening"></p> <p>बनाया गया पहला आकृति के अंदर उन पिक्सल हल्का कर रहे हैं:
sctx.save();
sctx.strokeStyle = this.color;
sctx.lineWidth = this.width;
sctx.beginPath();
sctx.moveTo(this.points[0].x, this.points[0].y);
for (var i = 1; i < this.points.length; i++)
{
sctx.lineTo(this.points[i].x, this.points[i].y);
}
sctx.closePath();
sctx.stroke();
sctx.restore();
और लाइनों:
sctx.save();
sctx.strokeStyle = 'orange';
sctx.lineWidth = 5;
console.log(sctx);
sctx.beginPath();
sctx.moveTo(this.points[0].x, this.points[0].y);
for (var i = 1; i < this.points.length; i++)
{
sctx.lineTo(this.points[i].x, this.points[i].y);
}
sctx.closePath();
sctx.stroke();
sctx.restore();
और एक ही स्थिति है जहाँ बक्से 2px चौड़ाई में तैयार कर रहे हैं की एक तस्वीर:
यहाँ कोड वर्गों आकर्षित करने के लिए इस्तेमाल किया जा रहा है
lineTo()
शायद अल्फा मूल्यों के साथ गड़बड़ कर रहा है? कोई भी मदद बहुत ही सराहनीय होगी।
संपादित करें: स्पष्ट करने के लिए, वही बात तब होती है जब sctx.closePath();
खींचे जाने वाले पथ से छोड़ा जाता है।
कोई भी मौका आप एक jsfiddle टॉस कर सकते हैं? – jcolebrand
संभवतः, अगर मुझे वास्तव में करना है। मैं एक बदले जाने योग्य लाइब्रेरी (अपनी खुद की सृजन का) का उपयोग कर रहा हूं: https://github.com/Bloodyaugust/SugarLab, इसलिए मुझे इसके लिए बहुत कुछ कम करना होगा। – Bloodyaugust
मैं कहूंगा कि आपका विश्लेषण सही है, बक्से कम अस्पष्टता पर खींचे जा रहे हैं और इसके ऊपर के आकार को चित्रित करने से आकार को "अंदर" पूर्ण अस्पष्टता में रीसेट कर दिया जा रहा है। मुझे डर है कि मुझे अनुमान लगाने के लिए शामिल प्रौद्योगिकियों के बारे में पर्याप्त जानकारी नहीं है। –