---
id: "mnslkuo9-uous66"
name: "Paper.js Rectangle point 参数格式问题"
type: "feedback"
project: "poster-plugin"
tags: [bug, paper.js, button]
created: "2026-04-10"
---
按钮组件(button)的背景矩形覆盖整个画布，而非指定尺寸。

问题原因：Path.Rectangle 的 point 参数使用数组 [x, y] 在某些情况下不能正确工作。

修复方法：在 poster/canvas.js 的 createButton 函数中，将：
```javascript
point: [x, y]
```
改为：
```javascript
point: new paper.Point(x, y)
```

为什么重要：Paper.js 的 Point/Size/Color 构造函数应显式使用对应的类，而不是隐式数组转换，确保跨版本兼容性。

如何应用：在 canvas.js 中所有创建几何对象时，统一使用显式构造函数（new paper.Point, new paper.Size, new paper.Color）。