参考 saveFrames()

saveFrames()

从画布中捕获一系列帧,可以另存为图片。

saveFrames() 创建一个帧对象数组。每一帧存储为一个对象,其文件类型、文件名和图像数据为字符串。例如,第一个保存的帧可以具有以下属性:

{ ext: "'png', filename: 'frame0', imageData:" "'data":"image/octet-stream;base64, abc123'}

" "

第一个参数filename设置文件的前缀名称。例如,将前缀设置为 'frame' 会生成图像" 文件frame0.pngframe1.png 等。

第二个参数extension将文件类型设置为 "'png''jpg'.

"

第三个参数duration设置录制时间,以秒计算。 最长持续时间为 15 秒。

第四个参数framerate,设置每秒录制帧数。最大帧速率值为 22。有限制durationframerate 以避免使用过多内存。录制大画布很容易使绘图甚至网络浏览器崩溃。

第五个参数,callback,是可选的。如果传入回调函数, 在默认情况下,系统不会保存图像文件。我们可以通过这个回调函来处理这个数组里的所有数据。它包含了所有捕捉到的帧,每一帧也包含了具有三个属性的对象:imageDatafilenameextension

注意:在默认情况下,帧会作为单独的图像文件下载。

示例

语法

saveFrames(filename, extension, duration, framerate, [callback])

参数

filename
字符串:

文件名前缀。

extension
字符串:

文件扩展名,“jpg” 或 “png”。

duration
数字:

录制的持续时间以秒为单位。该参数将被限制为小于或等于 15。

framerate
数字:

每秒保存的帧数。该参数将被限制为小于或等于 22。

callback
函数(数组):

回调函数将被用来处理图像数据。这个函数应该接受一个数组作为参数。这数组将包含指定数量对象的帧。每个对象有三个属性:imageDatafilenameextension

Notice any errors or typos? Please let us know. Please feel free to edit src/image/image.js and open a pull request!

相关参考