QML之Canvas(画布元素)

原创 2015年11月20日 11:59:42
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()//画路径
}

这样子就画好了一条线。路径的设置,也就是在坐标系中找好点,一个开始点,一个结束点,这样点点之间就是画笔的路径。使用stroke就把路径线画好了。这里面的坐标是二维笛卡尔坐标系统,左上角是( 0,0)坐标。Y轴坐标轴向下,X轴坐标轴向右。






版权声明:本文为博主原创文章,未经博主允许不得转载。

QML BOOK 第七章 Canvas Element

7. Canvas Element 注意 最后一次构建:2014年1月20日下午18:00。 这章的源代码能够在http://qmlbook.org/assets/中找到。 ...
  • zcwwcw
  • zcwwcw
  • 2014年08月08日 10:55
  • 1838

qml学习--------------利用Canvas绘制简单图形

在qml中,要实现绘图,就必须要用到下面的东西: Canvas: 画布 context: 画师 Pen: 画笔 Brush: 画刷 坐标系: qml中,画布的原点是在左上角的。在qml中...

QML中使用canvas简单绘图

看到QT那么多元素都懒得说了,今天看到了Canvas,必须一说。 当然,QML我也在学习中,此博客是我的学习记录。 Canvas的中文翻译是帆布,也就是说它其实相当于我们的画布,这么一想,画图也就...

QML类型说明-Context2D

1.  ontext2D ImportStatement:   import QtQuick 2.2 Since:  Qt 5.0   Properties canvas :QtQuick:...

在QML应用中使用Canvas来画图

我们知道画图应用设计中比较重要,虽然QML有很多可以帮我们渲染的控件。我们可以在QML应用中使用Canvas来画我们所需要的图。比如我们可以利用Canvas来画股票的曲线。事实上,我们很容易使用这个A...

QML画图-Canvas

定义画笔 Canvas     {         id: canvas;         width: 100; height: 100 //画布需要定义面积             onPaint...

关于Qt5 QML中Canvas画布叠加区域为透明时,如何传递鼠标事件到下层画布。

本人的第一篇Qt文章!!以此开始激励自己学习!  本人只能算小菜鸟一只,大神们看的话不喜勿喷! 话不多说,看问题先: 下面的图片是所做东西的最后显示界面的一部分。每一个半椭圆形是一个Canv...

HTML5 canvas画布元素 制作 动态花朵动画

废话不多说 先上代码 var imge = new Image(100 ,100); imge.src = "hh.png"; var a = new Array(); a[0...

HTML5画布元素canvas提供的API使用方法

Html5画布元素canvas提供操作布局和画布元素呈现的属性和方法的接口。Html5画布元素canvas接口也继承了HtmlElement接口的属性和方法...

canvas 元素大小 画布大小

我们使用canvas的时候一般在canvas元素中直接设置它的width和height: 1 "myCanvas" width="300" height="15...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:QML之Canvas(画布元素)
举报原因:
原因补充:

(最多只允许输入30个字)