قماش العلامة خطوط الرسم المشكلة ...
-
22-07-2019 - |
سؤال
ولدي علامة قماش، واستخدمه رسم خطوط على ذلك، قماش هو مربع. يمكنني استخدام "مساحة" لتسجيل المسافة بين سطرين. ولدي canvasWidth وcanvasHight لتسجيل حجم قماش، في الواقع، هم نفس numnber .... 320
var x=0;
for (var i = 0; i < 5; i++) {
x = parseInt(x + space);
myCanvas.fillStyle = "rgb(200,0,0)";
myCanvas.fillRect(x, 1, 1, canvasHeight);
myCanvas.fillStyle = "rgb(0,200,0)";
myCanvas.fillRect(1, x, canvasWidth, 1);
}
ويمكنني استخدام رسم كل الخطوط الحمراء على قماش، ولكن خطوط خضراء يمكن إلا أن التعادل مرتين على القماش، وغيرها فقط لا يمكن أن تظهر، اعتدت محاولة {} الصيد، وأنها تختفي أي خطأ.
المحلول
ما المتصفح الذي تستخدمه؟
ولا يبدو أن المشكلة تكون في الرمز الذي اظهرنا، لأنه يعمل بشكل جيد بالنسبة لي.
وهنا هو بلدي على سبيل المثال أتش تي أم أل:
<!DOCTYPE html>
<html>
<body>
<canvas id="myCanvas" height="320" width="320" />
<script language="javascript">
var myCanvas = document.getElementById('myCanvas').getContext('2d');
var space = 10;
var x=0;
var canvasHeight = 320;
var canvasWidth = 320;
for (var i = 0; i < 5; i++) {
x = parseInt(x + space);
myCanvas.fillStyle = "rgb(200,0,0)";
myCanvas.fillRect(x, 1, 1, canvasHeight);
myCanvas.fillStyle = "rgb(0,200,0)";
myCanvas.fillRect(1, x, canvasWidth, 1);
}
</script>
</body>
</html>
نصائح أخرى
لماذا تستخدمون parseInt، هو متغير الفضاء الخاص بك ونوع من الخيط؟ إن لم يكن، في محاولة لإزالة parseInt.
لا تنتمي إلى StackOverflow