課程
/前端開發(fā)
/Html5
/Canvas繪圖詳解
自己寫代碼 cxt.lineWidth=1;還是比較粗,而且有點(diǎn)模糊,求支招
2015-12-08
源自:Canvas繪圖詳解 2-6
正在回答
我也不知道為什么。<canvas id="canvas0" width="400" height="400"></canvas> ? 這里的寬和高像你那個寫在style中就會出現(xiàn)你的那種問題。如果直接寫到width和height屬性上就沒有問題。你可以js中獲取窗口的大小,然后設(shè)置canvas 的 width和 height
湖工咖啡 提問者
.canvas.style.width跟canvas.width(同理,canvas.style.height和canvas.style.height)是兩個不同的概念。canvas.style.width是瀏覽器渲染canvas的尺寸,而canvas.width是canvas的畫布大小。所以不要誤以為在css里面設(shè)置了canvas的尺寸就OK啦。如果沒有設(shè)置canvas的width和height屬性,則其默認(rèn)值是width:300px,height:150px。
<canvas id="canvas0" style="width:100%;height:100%;"></canvas>
var canvas=document.getElementById("canvas0");var HEIGHT=canvas.height;var WIDTH=canvas.width;var hdistance=HEIGHT/8;var wdistance=WIDTH/12;
window.onload=function(){ ? ?var i; ? ?/*水平*/ ? ?for(i=1;i<8;i++) ? ?{ ? ? ? ?cxt.save(); ? ? ? ?cxt.translate(0.4,0.4); ? ? ? ?cxt.lineWidth=0.4; ? ? ? ?cxt.beginPath(); ? ? ? ?cxt.moveTo(0,hdistance*i); ? ? ? ?cxt.lineTo(WIDTH,hdistance*i); ? ? ? ?cxt.closePath(); ? ? ? ?if(i==4) ? ? ? ? ? ?cxt.strokeStyle="#5F9EA0"; ? ? ? ?else ? ? ? ? ? ?cxt.strokeStyle="#ADD8E6"; ? ? ? ?cxt.stroke(); ? ? ? ?cxt.restore(); ? ?}
}
這是改過的 ?效果還相對舒服點(diǎn),不過還是沒有辦法畫出比較細(xì)的線 求大神指點(diǎn)
這是canvas里的一個怎么說呢,在繪制奇數(shù)寬度的時候它會繪制出 以這個奇數(shù)值+1的寬度 但是卻是模糊的,并不是只有 lineWidth =1 才有這個問題。
木子舟義 回復(fù) 湖工咖啡 提問者
代碼呢?
舉報
Canvas系列教程第二課,詳解Canvas各接口,讓同學(xué)徹底掌握Canvas繪圖
2 回答哈哈 看得比較晚~~~
3 回答線條問題啊
1 回答請問哪里有比較全的api
1 回答globalCompositeOperation 有時候好使 有時候不行 什么原因。。。
2 回答canvas畫一條線應(yīng)該怎么加事件呢?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2015-12-08
我也不知道為什么。<canvas id="canvas0" width="400" height="400"></canvas> ? 這里的寬和高像你那個寫在style中就會出現(xiàn)你的那種問題。如果直接寫到width和height屬性上就沒有問題。你可以js中獲取窗口的大小,然后設(shè)置canvas 的 width和 height
2015-12-14
.canvas.style.width跟canvas.width(同理,canvas.style.height和canvas.style.height)是兩個不同的概念。canvas.style.width是瀏覽器渲染canvas的尺寸,而canvas.width是canvas的畫布大小。所以不要誤以為在css里面設(shè)置了canvas的尺寸就OK啦。如果沒有設(shè)置canvas的width和height屬性,則其默認(rèn)值是width:300px,height:150px。
2015-12-08
<canvas id="canvas0" style="width:100%;height:100%;"></canvas>
var canvas=document.getElementById("canvas0");
var HEIGHT=canvas.height;
var WIDTH=canvas.width;
var hdistance=HEIGHT/8;
var wdistance=WIDTH/12;
window.onload=function()
{
? ?var i;
? ?/*水平*/
? ?for(i=1;i<8;i++)
? ?{
? ? ? ?cxt.save();
? ? ? ?cxt.translate(0.4,0.4);
? ? ? ?cxt.lineWidth=0.4;
? ? ? ?cxt.beginPath();
? ? ? ?cxt.moveTo(0,hdistance*i);
? ? ? ?cxt.lineTo(WIDTH,hdistance*i);
? ? ? ?cxt.closePath();
? ? ? ?if(i==4)
? ? ? ? ? ?cxt.strokeStyle="#5F9EA0";
? ? ? ?else
? ? ? ? ? ?cxt.strokeStyle="#ADD8E6";
? ? ? ?cxt.stroke();
? ? ? ?cxt.restore();
? ?}
}
這是改過的 ?效果還相對舒服點(diǎn),不過還是沒有辦法畫出比較細(xì)的線 求大神指點(diǎn)
2015-12-08
這是canvas里的一個怎么說呢,在繪制奇數(shù)寬度的時候它會繪制出 以這個奇數(shù)值+1的寬度 但是卻是模糊的,并不是只有 lineWidth =1 才有這個問題。
2015-12-08
代碼呢?