2021SC@SDUSC
这期主要学习的是quark-renderer中的canvas,在下载的js文件中,在目录src下有一个canvas文件夹,其中包含canvas的js文件,在该文件夹中有两个js文件,分别是canvasLayer.js和canvasPainter.js。
首先,这两个文件的关系属于依赖关系,canvasPainter根据canvasLayer来创建画布,这些图像不一定可见,有可能只是用来导出图像的实例。对于系统而言,必须存在至少一个canvas画布。其次,canvas是需要直接操作DOM的,而微信小程序的开发中,程序员不能直接操作DOM,因此,在微信小程序的开发中,不能动态的创建canvas。
在canvasLayer.js 中,主要的内容就是在js文件中编写了一个canvasLayer类,然后将其导出。在该类中,首先是构造器constructor函数,如图所示:
在该函数中有四个参数,分别是host、height、width、dpr,其中第一个参数host表示的是HTMLDOM中的元素,例如DIV标签,也可以是canvas实例,或者是context实例,因为在某些运行环境中,不能获得canvas实例的引用,只能获得context。第二个参数width和第三个参数height分别表示宽和高。最后一个参