QML之Canvas(畫布元素)
阿新 • • 發佈:2019-01-22
Qt5中引進了畫布元素(canvas element),允許指令碼繪製。畫布元素(canvas
element) 提供了一個依賴於解析度的點陣圖畫布,你可以使JavaScript指令碼來繪製圖形,製作遊戲或者其它的動態影象。畫布元素(canvas
element)是基於HTML5的畫布元素來完成的。
畫布元素( canvas element)的基本思想是使一個2D物件來渲染路徑。這個2D物件包括了必要的繪圖函式,畫布元素(canvas element)充當繪製畫布。2D物件持畫筆,填充,漸變,文字和繪製路徑建立命令。
在QML中,畫布元素(canvas
element)充當了繪製的容器。2D繪製物件提供了實際繪製的方法。繪製需要在onPaint事件中完成。
畫布的繪製使用:
1.
裝載畫筆或者填充模式
2.
建立繪製路徑
3.
使用畫筆或者填充繪製路徑
使用一個簡單的例子說明這個過程
onPaint:
{
var ctx = getContext("2d")
ctx.strokeStyle = "red"//畫筆的樣式
ctx.beginPath()//繪製開始路徑,
ctx.moveTo(50,50)//設定一個開始的點
ctx.lineTo(150,50)//設定結束的點ctx.closePath()//
ctx.stroke()//畫路徑
}