91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

在html5中怎么設置canvas的寬高

發布時間:2022-02-22 14:14:29 來源:億速云 閱讀:267 作者:小新 欄目:開發技術

這篇文章主要為大家展示了“在html5中怎么設置canvas的寬高”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“在html5中怎么設置canvas的寬高”這篇文章吧。

Canvas是HTML5新增的組件,它就像一塊幕布,可以用JavaScript在上面繪制各種圖表、動畫等。

沒有Canvas的年代,繪圖只能借助Flash插件實現,頁面不得不用JavaScript和Flash進行交互。有了Canvas,我們就再也不需要Flash了,直接使用JavaScript完成繪制。

當我看了一下教程后,自己寫了一個hello world的時候,麻煩事就出現了。看下面代碼:

<!DOCTYPE html>
<html lang="en">
<body>
<canvas id="canvas1" >
</canvas>
<script>
    var oC = document.getElementById('canvas1');
    var ctx = oC.getContext("2d");
    ctx.moveTo(0, 0);
    ctx.lineTo(200, 200);
    ctx.stroke();
</script>
</body>
</html>

上面代碼的意思,是要在一個width和height各為200px的canvas上畫一條直線,該直線的起點為(0,0),終點為(200,200);

然而瀏覽器畫出來的圖像卻是:

在html5中怎么設置canvas的寬高

一看這圖~怎么是這樣的斜度?不應該啊~本應該是一個對角線才對啊~~

后來差了一下資料才知道,canvas標簽設置width和height的時候,有以下幾種方式和產生的后果:

Canvas元素默認寬 300px, 高 150px, 設置其寬高可以使用如下方法:
方法一:
1 <canvas width="500" height="500"$amp;>amp;$lt;/canvas>
方法二:使用HTML5 Canvas API操作
1 var canvas = document.getElementById('欲操作canvas的id');
2 canvas.width = 500;
3 canvas.width = 500;

若通過如下方法設置寬高,那么Canvas元素將由原來大小被拉伸到所設置的寬高:
方法一:使用CSS 會被拉伸
1 #欲操作canvas的id{
2     width:1000px;
3     height:1000px;
4 }

也包含了行間樣式中的  。也就是上面的例子,也會產生拉伸的情況。
方法二:使用HTML5 Canvas API操作 會被拉伸
1 var canvas = document.getElementById('欲操作canvas的id');
2 canvas.style.width = "1000px";
3 canvas.style.height = "1000px";
方法三 :用jquery的$("#id").width(500);會被拉伸

其它:canvas的width和height也不能用百分比表示。canvas會將百分值當成數值顯示

 所以,通過上面的資料便可知道其原因就是我上面例子中代碼會讓canvas的寬高被拉伸了,從而使得圖像跟預想的不一致的。

現在我重寫了一份正確設置canvas寬高大小的代碼例子:

<!DOCTYPE HTML>
<html>
<body>
<canvas id="myCanvas" width="200" height="200" >
    Your browser does not support the canvas element.
</canvas>
<script type="text/javascript">
    var c = document.getElementById("myCanvas");
    var cxt = c.getContext("2d");
    cxt.moveTo(0, 0);
    cxt.lineTo(200, 200);
    cxt.stroke();
</script>
</body>
</html>

以上是“在html5中怎么設置canvas的寬高”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

涞水县| 建阳市| 城市| 娄烦县| 松原市| 九台市| 定远县| 桃园县| 广灵县| 大新县| 肥东县| 六盘水市| 萨嘎县| 东明县| 禄丰县| 于都县| 韩城市| 五原县| 宁乡县| 美姑县| 赞皇县| 苏尼特右旗| 菏泽市| 砀山县| 新巴尔虎右旗| 广汉市| 昭觉县| 儋州市| 内丘县| 离岛区| 木里| 丹凤县| 察雅县| 大理市| 荆门市| 茂名市| 泰兴市| 晋州市| 三亚市| 广汉市| 弋阳县|