本篇內容介紹了“Canvas怎么使用”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
什么是 Canvas?
畫布是一個矩形區域,你可以控制其每一像素。
通過 JavaScript 來繪制
<span data-mce- font-size:16px;">Canvas 元素本身是沒有繪圖能力的。所有的繪制工作必須在 JavaScript 內部完成:
<script type="text/javascript"> var c=document.getElementById("myCanvas"); var cxt=c.getContext("2d"); cxt.fillStyle="#FF0000"; cxt.fillRect(0,0,150,75); </script>
其次,創建 context 對象:
var cxt=c.getContext("2d");
最后,使用fillStyle 方法,可將其染成紅色,fillRect 方法規定了形狀、位置和尺寸。
繪圖方法:
lineTo()方法使用X和Y作為參數,在 Canvas 上創建上一個點到參數指定點的路徑。
beginPath()方法用于開始一個新路徑或重置當前路徑,沒有參數。
fill()方法用于為當前的路徑填充樣式。
JavaScript 代碼:
<script type="text/javascript"> var canvas = document.getElementById("mycanvas"); var context = canvas.getContext("2d"); context.moveTo(250,50); context.lineTo(150,100); context.lineTo(250,150); context.closePath(); context.stroke(); context.fill(); </script>
font 屬性設置或獲取字體屬性,如字體樣式、字重、字體大小和字體系列等。它遵循和 CSS 字體屬性相同的語法。
textBaseline 屬性設置或獲取文本內容的垂直對齊方式。textBaseline 可以設置成5個值:"top", "bottom", "middle", "aplhabetic" 和 "hanging"。
strokeStyle 屬性設置或獲取 Canvas 上用于繪制路徑的顏色、漸變和圖案。
createLinearGradient有4個參數:
起點的Y坐標
終點的Y坐標
addColorStop()方法指定了漸變對象的顏色和位置。
一個0.0到1.0之間的值,代表漸變中開始點和結束點的位置。
JavaScript 代碼:
<script type="text/javascript"> var canvas=document.getElementById('mycanvas'); var context=canvas.getContext('2d'); var gradient=context.createLinearGradient(50,30,50,170); gradient.addColorStop(0,"red"); gradient.addColorStop("0.1","orange"); gradient.addColorStop("0.3","yellow"); gradient.addColorStop("0.5","green"); gradient.addColorStop("0.7","blue"); gradient.addColorStop("0.9","indigo"); gradient.addColorStop(1,"violet"); context.fillStyle=gradient; context.fillRect(50,30,250,140); </script>
放置圖像的X坐標
圖像的寬度
getImageData()方法通過從 Canvas 上指定的矩形里拷貝像素數據,來創建一個圖形數據對象。
復制的矩形左上角X坐標
復制矩形的寬度
putImageData()方法用于將指定圖像的像素數據放回到 Canvas 上來。
ImageData 對象
ImageData 對象左上角的Y坐標
放置圖像的Y坐標
繪制圖像的高度
“Canvas怎么使用”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。