更新记录
1.0.0(2025-11-06) 下载此版本
1、init
平台兼容性
uni-app(4.84)
| Vue2 | Vue3 | Chrome | Safari | app-vue | app-nvue | Android | iOS | 鸿蒙 |
|---|---|---|---|---|---|---|---|---|
| - | - | - | - | - | - | - | - | - |
| 微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 快应用-华为 | 快应用-联盟 |
|---|---|---|---|---|---|---|---|---|---|---|
| - | - | - | - | - | - | - | - | - | - | - |
uni-app x(4.84)
| Chrome | Safari | Android | iOS | 鸿蒙 | 微信小程序 |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
API 文档
主要类
Placard
画布主类,用于管理整个画布操作
- 构造函数参数:
canvas: HTML Canvas 元素canvasWidth: 画布宽度canvasHeight: 画布高度backgroundColor: 背景颜色
方法
getRenderReact(): 获取渲染区域loadControl(controls): 加载控制组件addNode(node): 添加节点renderDraw(): 重新渲染画布reorderZIndexNode(node, type): 调整节点层级resetNodeList(nodeList): 重置节点列表historyTask.undo(): 撤销操作historyTask.redo(): 重做操作
ImageNode
图像节点类,表示一个图像元素
静态方法
createImageData(url): 从URL创建图像数据
构造函数参数
data: 图像数据width: 图像宽度height: 图像高度url: 图像URLscale: 缩放比例base64: Base64编码的图像数据
方法
- [copy()](): 复制图像节点
ImageNodeBox
图像节点容器类,包装 ImageNode 并提供布局功能
构造函数参数
imageNode:ImageNode实例renderReact: 渲染区域
方法
setMode(mode, options): 设置显示模式drawCache(): 绘制缓存getType(): 获取节点类型flip(direction): 翻转图像 ('x' 或 'y')
TextNode
文本节点类,表示一个文本元素
构造函数参数
- [text](): 文本内容
fontSize: 字体大小color: 文本颜色
TextNodeBox
文本节点容器类,包装 TextNode 并提供布局功能
构造函数参数
textNode:TextNode实例renderReact: 渲染区域
方法
drawCache(): 绘制缓存getType(): 获取节点类型getLocation(): 获取位置setLocation(location): 设置位置updateAttribute(key, value): 更新属性getAttribute(key): 获取属性值- [changeDirection(direction)](): 改变文本方向
控制组件
ScaleControl
缩放控制器
- 构造函数参数:
renderReact
RotateControl
旋转控制器
- 构造函数参数:
renderReact
PlacardTools
工具类集合
方法
imageToBase64(imagePath): 将图像转换为Base64编码
事件处理
canvasEvent
画布事件处理器,可通过 placard.canvasEvent 访问
方法
down(event): 鼠标按下事件move(event): 鼠标移动事件up(event): 鼠标抬起事件getSelectNode(): 获取当前选中节点setSelectNode(node): 设置选中节点
使用示例
// 创建画布实例
const placard = new Placard({
canvas: canvasElement,
canvasWidth: 400,
canvasHeight: 500,
backgroundColor: "#000000"
});
// 添加图像
const imageNode = new ImageNode({...});
const imageNodeBox = new ImageNodeBox(imageNode, placard.getRenderReact());
placard.addNode(imageNodeBox);
// 添加文本
const textNode = new TextNode({...});
const textNodeBox = new TextNodeBox(textNode, placard.getRenderReact());
placard.addNode(textNodeBox);

收藏人数:
下载插件并导入HBuilderX
下载插件ZIP
下载 1
赞赏 0
下载 10752260
赞赏 1798
赞赏
京公网安备:11010802035340号