深度画布 矩形工具

This commit is contained in:
lzp
2026-03-12 15:51:18 +08:00
parent 86f1efbf43
commit d115047563
9 changed files with 378 additions and 213 deletions

View File

@@ -1,5 +1,21 @@
import { createStaticCanvas } from './canvasFactory'
import { getObjectsBoundingBox, cloneObjects } from './canvasMethod'
/** 导出画布为图片 */
export async function exportCanvasToImage(canvas) {
const clonedObjects = await cloneObjects(canvas.getObjects())
const staticCanvas = createStaticCanvas(document.createElement('canvas'))
const width = canvas.clipPath.width
const height = canvas.clipPath.height
staticCanvas.setWidth(width)
staticCanvas.setHeight(height)
clonedObjects.forEach(obj => staticCanvas.add(obj))
// 导出图片
const dataURL = staticCanvas.toDataURL({
type: 'image/png',
quality: 1,
})
return dataURL
}
/** 导出指定对象 */
export async function exportObjectsToImage(objects = [], isDetails = false) {
const clonedObjects = await cloneObjects(objects)