可以修改uni.canvasToTempFilePath的destWidth和destHeight参数实现:
<template>
<view class="container">
<canvas canvas-id="myCanvas" id="myCanvas" class="canvas"></canvas>
<button type="primary" @click="exportImage">导出大图</button>
</view>
</template>
<script>
export default {
data() {
return {
canvasWidth: 300, // Canvas 宽度
canvasHeight: 300, // Canvas 高度
scale: 3 // 放大倍数
};
},
methods: {
drawCanvas() {
const ctx = uni.createCanvasContext('myCanvas', this);
ctx.clearRect(0, 0, this.canvasWidth, this.canvasHeight);
ctx.fillStyle = 'red';
ctx.fillRect(0, 0, this.canvasWidth, this.canvasHeight);
ctx.draw(true);
},
exportImage() {
const scale = this.scale;
const width = this.canvasWidth * scale;
const height = this.canvasHeight * scale;
uni.canvasToTempFilePath({
x: 0,
y: 0,
width: this.canvasWidth,
height: this.canvasHeight,
destWidth: width,
destHeight: height,
canvasId: 'myCanvas',
success: (res) => {
console.log('导出图片成功', res.tempFilePath);
// 可以在这里处理导出的图片路径
},
fail: (err) => {
console.error('导出图片失败', err);
}
}, this);
}
},
onReady() {
this.drawCanvas();
}
};
</script>
<style>
.container {
padding: 20px;
}
.canvas {
width: 300px;
height: 300px;
border: 1px solid #ccc;
}
</style> 网友回复
如何破解绕开seedance2.0真人照片生成视频 限制?
python有哪些算法可以将视频中的每个帧图片去除指定区域水印合成新的视频?
iphone的激光雷达数据能否实时传输到three三维空间中?
豆包sora等ai视频生成大模型生成的视频水印如何去除?
python如何实现在电脑上拨号打电话给手机?
具身机器人与人形机器人区别?
nodejs如何将一个完整的js代码文件切割成不同的部分混淆后动态加载进入html运行?
为啥windows.onerror捕获js错误是这样的{"message":"Script error.","source":"","lineno":0,"colno":0,"stack":null,
2026年ai将全面接管编程?
WebMCP是干啥的?


