clickgo 5.12.1 → 5.12.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app/demo.cga +0 -0
- package/dist/control/common.cgc +0 -0
- package/dist/control/fabric.cgc +0 -0
- package/dist/index.js +1 -1
- package/doc/clickgo-rag.md +150 -2
- package/package.json +1 -1
package/doc/clickgo-rag.md
CHANGED
|
@@ -1925,6 +1925,48 @@ ECharts 配置选项。
|
|
|
1925
1925
|
|
|
1926
1926
|
是否显示框选矩形(拖拽空白区域来多选对象的虚线选框),默认为 `true`。
|
|
1927
1927
|
|
|
1928
|
+
#### mode
|
|
1929
|
+
|
|
1930
|
+
`''` | `'pan'` | `'zoom'`
|
|
1931
|
+
|
|
1932
|
+
画布交互模式,默认为 `''`(正常模式)。`'pan'` 为平移模式(类似 PS 按住空格键),开启后所有对象不响应事件,拖拽任意位置将平移整个画布 viewport。`'zoom'` 为拖拽缩放模式(类似 PS Z 键),开启后所有对象不响应事件,在画布任意位置按住鼠标并左右拖动即可缩放:向右拖动放大,向左拖动缩小,鼠标按下的点在缩放过程中保持位置不动(锁定点缩放)。
|
|
1933
|
+
|
|
1934
|
+
#### zoomMin
|
|
1935
|
+
|
|
1936
|
+
`number` | `string`
|
|
1937
|
+
|
|
1938
|
+
画布最小缩放倍数,默认为 `0.01`(即 1%)。
|
|
1939
|
+
|
|
1940
|
+
#### zoomMax
|
|
1941
|
+
|
|
1942
|
+
`number` | `string`
|
|
1943
|
+
|
|
1944
|
+
画布最大缩放倍数,默认为 `100`(即 10000%)。
|
|
1945
|
+
|
|
1946
|
+
#### artboardWidth
|
|
1947
|
+
|
|
1948
|
+
`number` | `string`
|
|
1949
|
+
|
|
1950
|
+
画板宽度(像素),默认为 `0`(不启用画板)。与 `artboardHeight` 同时设置时生效:画布扩展为铺满整个控件,中间显示指定尺寸的白色画板,四周为灰色背景。此模式下控制点与拖拽响应在整个控件范围内有效,对象移到画板外时控制点依然可见。
|
|
1951
|
+
|
|
1952
|
+
#### artboardHeight
|
|
1953
|
+
|
|
1954
|
+
`number` | `string`
|
|
1955
|
+
|
|
1956
|
+
画板高度(像素),默认为 `0`(不启用画板)。
|
|
1957
|
+
|
|
1958
|
+
#### artboardBg
|
|
1959
|
+
|
|
1960
|
+
`string`
|
|
1961
|
+
|
|
1962
|
+
画板外背景色,支持任意 CSS 颜色字符串,默认为 `#7a7a7a`。空字符串表示透明,可以透过到 HTML 背景层。仅在启用画板模式(`artboardWidth` 和 `artboardHeight` 同时非 0)时有效。
|
|
1963
|
+
|
|
1964
|
+
#### artboardFill
|
|
1965
|
+
|
|
1966
|
+
`string`
|
|
1967
|
+
|
|
1968
|
+
画板内填充色,支持任意 CSS 颜色字符串,默认为 `#ffffff`(白色)。空字符串表示画板内容透明,可以透过到 HTML 背景层。仅在启用画板模式时有效。
|
|
1969
|
+
|
|
1928
1970
|
### 事件
|
|
1929
1971
|
|
|
1930
1972
|
#### init
|
|
@@ -1939,9 +1981,56 @@ ECharts 配置选项。
|
|
|
1939
1981
|
|
|
1940
1982
|
激活图层变更时触发(仅 `autoLayer` 为 `true` 时)。`event.detail.prev` 为变更前的图层 name,`event.detail.next` 为变更后的图层 name,取消选中时为空字符串。多选状态下 `event.detail.next` 同样为空字符串。
|
|
1941
1983
|
|
|
1984
|
+
### 属性
|
|
1985
|
+
|
|
1986
|
+
#### access.canvas
|
|
1987
|
+
|
|
1988
|
+
`fabric.Canvas | undefined`
|
|
1989
|
+
|
|
1990
|
+
fabric.js Canvas 对象,在 `init` 事件触发后可用。可通过此对象调用所有 fabric.js 原生 API,如添加/移除对象、获取图层列表、设置视图变换等。
|
|
1991
|
+
|
|
1992
|
+
#### access.artboard
|
|
1993
|
+
|
|
1994
|
+
`{ left: number; top: number; width: number; height: number; } | null`
|
|
1995
|
+
|
|
1996
|
+
当前画板在 canvas 中的位置与尺寸。启用画板模式时(`artboardWidth` 和 `artboardHeight` 同时非 0)此值为对象,包含:
|
|
1997
|
+
- `left` — 画板左上角在 canvas 中的 x 坐标
|
|
1998
|
+
- `top` — 画板左上角在 canvas 中的 y 坐标
|
|
1999
|
+
- `width` — 画板宽度
|
|
2000
|
+
- `height` — 画板高度
|
|
2001
|
+
|
|
2002
|
+
未启用画板模式时为 `null`。用户可据此计算对象相对于画板的坐标(如 `objLeft - access.artboard.left`)。
|
|
2003
|
+
|
|
1942
2004
|
### 方法
|
|
1943
2005
|
|
|
1944
|
-
|
|
2006
|
+
#### zoomActual
|
|
2007
|
+
|
|
2008
|
+
恢复画布为实际像素(1:1,即缩放倍数为 1),同时将画板(或 canvas 原点)居中显示。
|
|
2009
|
+
|
|
2010
|
+
#### zoomFit
|
|
2011
|
+
|
|
2012
|
+
将画布缩放到恰好完整显示画板(有画板模式时)或 canvas(无画板时)的最大比例,同时居中显示。等同于「适应屏幕」。
|
|
2013
|
+
|
|
2014
|
+
#### zoomIn
|
|
2015
|
+
|
|
2016
|
+
以画布中心为锁定点放大,每次放大 1.25 倍。
|
|
2017
|
+
|
|
2018
|
+
#### zoomOut
|
|
2019
|
+
|
|
2020
|
+
以画布中心为锁定点缩小,每次缩小为原来的 1/1.25。
|
|
2021
|
+
|
|
2022
|
+
#### zoomTo
|
|
2023
|
+
|
|
2024
|
+
```typescript
|
|
2025
|
+
zoomTo(zoom: number, screenX?: number, screenY?: number): void
|
|
2026
|
+
```
|
|
2027
|
+
|
|
2028
|
+
将画布缩放到指定倍数,以 `(screenX, screenY)` 为锁定点(canvas 元素内的屏幕坐标),内部调用 fabric 原生 `zoomToPoint`。缩放结果受 `zoomMin` / `zoomMax` 限制。
|
|
2029
|
+
|
|
2030
|
+
**参数**:
|
|
2031
|
+
- `zoom` — 目标缩放倍数
|
|
2032
|
+
- `screenX` — 锁定点在 canvas 元素内的屏幕 x 坐标,默认 `0`
|
|
2033
|
+
- `screenY` — 锁定点在 canvas 元素内的屏幕 y 坐标,默认 `0`
|
|
1945
2034
|
|
|
1946
2035
|
### 插槽
|
|
1947
2036
|
|
|
@@ -1965,8 +2054,67 @@ ECharts 配置选项。
|
|
|
1965
2054
|
|
|
1966
2055
|
<!-- 关闭框选矩形 -->
|
|
1967
2056
|
<fabric :selector="false" @init="init"></fabric>
|
|
2057
|
+
|
|
2058
|
+
<!-- 启用画板模式:控件铺满容器,中间显示 800×600 的白色画板,四周灰色 -->
|
|
2059
|
+
<fabric :artboard-width="800" :artboard-height="600" @init="init"></fabric>
|
|
2060
|
+
|
|
2061
|
+
<!-- 自定义画板模式颜色 -->
|
|
2062
|
+
<fabric :artboard-width="800" :artboard-height="600" :artboard-bg="'#cccccc'" :artboard-fill="'#eeeeee'" @init="init"></fabric>
|
|
2063
|
+
|
|
2064
|
+
<!-- 透明画板:透过到背景 -->
|
|
2065
|
+
<fabric :artboard-width="800" :artboard-height="600" :artboard-bg="''" :artboard-fill="''" @init="init"></fabric>
|
|
2066
|
+
|
|
2067
|
+
<!-- 开启平移模式(类似 PS 空格键) -->
|
|
2068
|
+
<fabric mode="pan" @init="init"></fabric>
|
|
2069
|
+
|
|
2070
|
+
<!-- 开启拖拽缩放模式(类似 PS Z 键) -->
|
|
2071
|
+
<fabric mode="zoom" @init="init"></fabric>
|
|
1968
2072
|
```
|
|
1969
2073
|
|
|
2074
|
+
**使用缩放功能**:
|
|
2075
|
+
```typescript
|
|
2076
|
+
// 实际像素(1:1),画板居中
|
|
2077
|
+
this.refs.fabric.zoomActual();
|
|
2078
|
+
|
|
2079
|
+
// 适应屏幕,画板居中
|
|
2080
|
+
this.refs.fabric.zoomFit();
|
|
2081
|
+
|
|
2082
|
+
// 放大一级(以画布中心为锁定点)
|
|
2083
|
+
this.refs.fabric.zoomIn();
|
|
2084
|
+
|
|
2085
|
+
// 缩小一级(以画布中心为锁定点)
|
|
2086
|
+
this.refs.fabric.zoomOut();
|
|
2087
|
+
|
|
2088
|
+
// 自定义缩放到 2 倍,以指定点为锁定点
|
|
2089
|
+
this.refs.fabric.zoomTo(2, 400, 300);
|
|
2090
|
+
|
|
2091
|
+
**在 TypeScript 中使用画板和 canvas API**:
|
|
2092
|
+
```typescript
|
|
2093
|
+
public init(canvas: fabric.Canvas): void {
|
|
2094
|
+
// canvas 为 fabric.Canvas 对象
|
|
2095
|
+
// 可调用任何 fabric.js 原生 API
|
|
2096
|
+
canvas.add(new fabric.Circle({
|
|
2097
|
+
left: 100,
|
|
2098
|
+
top: 100,
|
|
2099
|
+
radius: 50,
|
|
2100
|
+
fill: '#ff0000'
|
|
2101
|
+
}));
|
|
2102
|
+
|
|
2103
|
+
// 访问画板位置信息
|
|
2104
|
+
if (this.access.artboard) {
|
|
2105
|
+
console.log(`画板位置: (${this.access.artboard.left}, ${this.access.artboard.top})`);
|
|
2106
|
+
console.log(`画板尺寸: ${this.access.artboard.width} × ${this.access.artboard.height}`);
|
|
2107
|
+
|
|
2108
|
+
// 计算对象相对于画板的坐标
|
|
2109
|
+
const allObjs = canvas.getObjects();
|
|
2110
|
+
allObjs.forEach(obj => {
|
|
2111
|
+
const relX = obj.left - this.access.artboard.left;
|
|
2112
|
+
const relY = obj.top - this.access.artboard.top;
|
|
2113
|
+
console.log(`对象在画板中的相对位置: (${relX}, ${relY})`);
|
|
2114
|
+
});
|
|
2115
|
+
}
|
|
2116
|
+
}
|
|
2117
|
+
|
|
1970
2118
|
|
|
1971
2119
|
## file
|
|
1972
2120
|
---
|
|
@@ -4200,7 +4348,7 @@ CSS 样式字符串。
|
|
|
4200
4348
|
|
|
4201
4349
|
`string`
|
|
4202
4350
|
|
|
4203
|
-
|
|
4351
|
+
快捷键提示文本,以 `+` 分隔各键名,如 `Ctrl+Alt+T`、`Ctrl+Shift+S`。支持的修饰键:`Ctrl`、`Alt`、`Shift`、`Meta`,在 macOS 上会自动替换为对应符号(`⌘` `⌥` `⇧`)。若只传单个键名(如 `T`),则自动前置 `Ctrl`/`⌘`。
|
|
4204
4352
|
|
|
4205
4353
|
#### type
|
|
4206
4354
|
|