搜索
开发文档
应用开发
快应用开发
快游戏开发
开发文档/快游戏开发/开发指南/接口/渲染
渲染更新时间: 2024-09-19 11:32:00

一、画布

获取主屏canvas
示例代码

const canvas = getCurrentPage().getCanvas()
const ctx = canvas.getContext("2d");

Canvas document.createElement('canvas')

获取离屏canvas
webgl是主屏;2d的是离屏

  • Canvas
属性类型说明
widthNumber画布的宽度
heightNumber画布的高度
getContextFunctionCanvasRenderingContext2D 或者 WebGLRenderingContext

离屏Canvas是可以设置width、height的,主屏Canvas设置width、height无效

CanvasRenderingContext2D Canvas.getContext("2d")

CanvasRenderingContext2D实现标准canvas2d接口。

WebGLRenderingContext Canvas.getContext("webgl")

实现标准的 WebGL 1.0 功能。

二、图片

Image new Image()

创建一个图片对象

属性类型说明
srcString图片的 URL
widthNumber图片的真实宽度
heightNumber图片的真实高度
onloadFunction(Event event)图片加载完成后触发的回调函数
onerrorFunction(Event event)图片加载失败触发的回调函数

示例代码

const img = new Image()
img.src = '/src/common/image/logo.png'
img.onload = function () {
ctx.drawImage(img, 100, 20)
}

三、帧率

qg.setPreferredFramesPerSecond(Number fps)

可以修改渲染帧率。默认渲染帧率为 60 帧每秒。修改后,requestAnimationFrame 的回调频率会发生改变。
参数 Number fps
必须,帧率,有效范围 1 - 60

Number requestAnimationFrame(Function callback)

在下次进行重绘时执行
callback
必须

cancelAnimationFrame(Number requestID)

取消一个先前通过调用 requestAnimationFrame 方法添加到计划中的动画帧请求
requestID
必须

四、字体

String | Null qg.loadFont(String path)

加载自定义字体文件,如果加载字体成功,则返回字体 family 值,否则返回 null。
参数 String path
字体文件路径,字体文件路径。可以是代码包文件路径,也可以是qg.env.USER_DATA_PATH + ${文件地址}

Number qg.getTextLineHeight(Object object)

获取文本的行高
参数 Object object

属性键值类型必填说明
fontStyleString字体样式 ,合法值有 'normal' 正常、'italic' 斜体,默认值为 'normal'
fontWeightString字重 , 合法值有 'normal' 正常、'bold' 粗体,默认值为 'normal'
fontSizeNumber字号,默认值为 16
fontFamilyString字体名称
textString文本的内容
successFunction接口调用成功的回调函数
failFunction接口调用失败的回调函数
completeFunction接口调用结束的回调函数

示例代码

const fontFamily = qg.loadFont('/common/font/m8JVjfNVeKWVnh3QMuKkFcZVaUuH99GUDg.woff2')
const textLineHeight = qg.getTextLineHeight({
fontFamily: fontFamily,
text: 'I am Arial',
success: function () {
console.log('success 获取行获取行高成功 字体:', fontFamily)
},
fail: function (err) {
console.error('fail 获取行高失败 err:', err)
},
complete: function (res) {
console.log('complete 获取行高完成 res', res)
}
})
console.log(' 字体:', fontFamily, '行高为:', textLineHeight)

上一篇:分包下载
下一篇:基础
文档内容是否有帮助?
有帮助
无帮助