1.先安装 html2canvas包
npm i html2canvas --save
2.引入
import html2canvas from 'html2canvas'
3.使用
html2canvas(document.querySelector('.model'), {
windowWidth: 800,
windowHeight: 800
}).then(function(canvas) {
document.body.appendChild(canvas)
})
4.如果出现截图不了three加载的模型可以将渲染器改成如下
this.renderer = new THREE.WebGLRenderer({
preserveDrawingBuffer: true
})
5.效果

6.将生成的画布保存为图片下载到本地
canvas.toDataURL(type, encoderOptions);
html2canvas(document.querySelector('.model'), {
windowWidth: 800,
windowHeight: 800
}).then(function(canvas) {
var imgData = canvas.toDataURL('image/png')
const link = document.createElement('a')
link.href = imgData
link.download = `${this.$tools.create_token()}.png`
link.click()
})

7.将生成的画布保存为图片上传到服务器