亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

那位大神,有何好方法能使中間空白角去除,保留四邊圓角


<!DOCTYPE html>
<html>
<head>
??? <meta charset="UTF-8">
??? <title></title>
</head>
<body>
??? <canvas id="canvas" style ="divplay:block;margin:0 auto;border:1px solid #aaa;"><!--顯示畫布框架-->
??????? 當前瀏覽器不支持Canvas,請更換瀏覽器后再試
??? </canvas>
<script>
??? window.onload = function(){

???? var canvas = document.getElementById("canvas") //通過Id("canvas")與畫布連接,必須
??? ?
??????????? canvas.width = 800??????????? //畫布寬 紅邑為可修改,下同
??????????? canvas.height = 800?????????? //畫布高
???? var context = canvas.getContext("2d")?? //設置畫布上下文環境,必須

for (var j = 0; j < 4; j++) {
??????? for (var i = 0; i < 4; i++) {
?????????? drawRect(context,20+i*100,20+j*100,100,100,7,10,"#058","red")? //起點(20,20),長寬100,半徑7,線寬10
??????????? }
?????? }
}
?function? drawRect(cxt,x0,y0,width,height,r,bordrwidth,bordrColor,fillColor){?? //將上行參數值傳遞到運行的函數后運行{}內的語句
???? cxt.save()
???? cxt.translate(x0,y0);???? //位移
???? cxt.beginPath();
?? ? cxt.arc(width-r,height-r,r,0,Math.PI/2);//從右下角起繪右下角圓角狀態
?? ? cxt.lineTo(r,height);//底直線
?? ? cxt.arc(r,height-r,r,Math.PI/2,Math.PI);//左下角
???? cxt.lineTo(0,r);//左直線
???? cxt.arc(r,r,r,Math.PI,Math.PI*3/2);//左上角
???? cxt.lineTo(width-r,0);//頂直線
???? cxt.arc(width-r,r,r,Math.PI*3/2,Math.PI*2);//右上角
???? cxt.closePath(); ?
?? ? cxt.restore();
?? ? cxt.lineWidth = bordrwidth;
???????????? cxt.fillStyle =fillColor;
?? ??? ??? ? cxt.strokeStyle = bordrColor;?? //設置線色狀態
?? ??? ??? ?
?? ??? ??? ?cxt.fill();??????????????? //執行填充色,注因context己傳遞為cxt,故為cxt.fill();不是context.fill();丁
?? ??? ??? ?cxt.stroke();???????????? //執行繪線
?}
</script>?? ?
?? ?
</body>
</html>http://img1.sycdn.imooc.com//584920570001124408000800.jpg

正在回答

2 回答

你可以先把底層藍色直接fill一個大的圓角矩形, 之后再把紅色的小圓角矩形貼上去就不會出現那些白色東西了,反正你做2048的畫 直接控制里面的小圓角矩形就可以了

0 回復 有任何疑惑可以回復我~
#1

慕粉4042427 提問者

先給予采納,但我的意思不是履蓋,而是在程式上修改尺寸,或者添加1至2句語句修正線頭等方式
2016-12-09 回復 有任何疑惑可以回復我~
#2

什0么 回復 慕粉4042427 提問者

如果是改尺寸,你在循環的時候,當i<3時 寬度家長 當j小于3時,高度家長, 如果是在draw里面改的話 , 你就添加一個新的變量, 用它來代表狀態, 當表示為左上角狀態時,這個圓角矩形就只在左上角繪制圓角,其他的變成直線 依此類推
2016-12-12 回復 有任何疑惑可以回復我~

是個好辦法,當修改循環時可以改變小格數量,不用再次繪一大方復蓋,多謝

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

那位大神,有何好方法能使中間空白角去除,保留四邊圓角

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號