ice-render 1.4.8 → 1.4.10
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/README.md +6 -4
- package/dist/index.cjs +2 -2
- package/dist/index.mjs +2 -2
- package/dist/index.umd.js +2 -2
- package/dist/types/ICE.d.mts +12 -0
- package/dist/types/ICE.d.ts +12 -0
- package/dist/types/renderer/ObjectCache.d.mts +13 -0
- package/dist/types/renderer/ObjectCache.d.ts +13 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -42,6 +42,8 @@ ICERender 是一款 **Canvas 2D 交互图形渲染引擎**,面向 ER 图 / 流
|
|
|
42
42
|
- **无全局 `Path2D` 的运行时自动降级**:`PolyfillPath2D` 记录路径命令、渲染时重放,与原生 `Path2D` 逐像素一致(老版本小程序基础库可用)。
|
|
43
43
|
- 字体、图片、离屏画布、像素比全部有平台适配(`FontFace` / 小程序 `loadFont`、`Image` / 小程序 `createImage`、`document.createElement('canvas')` / 小程序 `createOffscreenCanvas`、`devicePixelRatio` / 小程序系统信息)。
|
|
44
44
|
- `ICE.init(ctx)` 支持直接传入 Canvas 上下文,完全绕开 DOM。
|
|
45
|
+
- **每次提交都在「小程序形状」的运行时里回归**:[`tests/mini-program/`](./tests/mini-program/) 摘掉 `document` / `window` / `Path2D` / `requestAnimationFrame` / `FontFace` / `OffscreenCanvas`,只留 `wx.*`,画布对象只有 `width` / `height` / `getContext` —— 覆盖启动、出帧、路径重放、离屏缓存降级、文本量测降级、触摸输入、序列化与 SVG 导出。
|
|
46
|
+
- **接入示例与宿主契约**:[`examples/mini-program/`](./examples/mini-program/),含可直接拷进小程序项目的页面与触摸坐标适配层。
|
|
45
47
|
|
|
46
48
|
## ✨ 核心特性
|
|
47
49
|
|
|
@@ -100,7 +102,7 @@ ICERender 是一款 **Canvas 2D 交互图形渲染引擎**,面向 ER 图 / 流
|
|
|
100
102
|
**性能与工程质量**
|
|
101
103
|
|
|
102
104
|
- **高性能** —— 脏标记 + **脏矩形局部重绘**(默认,不满足局部条件时自动回退全量),配合组件级离屏缓存、渲染队列缓存与矩阵零分配。性能数字以本机 `npm run bench 5000` 为准(2026-09-11 实测约 2.2ms/帧,见上文「性能实测」段)。
|
|
103
|
-
- **完整工程化** —— **
|
|
105
|
+
- **完整工程化** —— **91 个测试文件 / 710 个用例**(jest,带「只许上调」的覆盖率门槛)、Playwright 可视化回归(golden-image + 脏矩形像素一致性 + 视口/对齐/交互)、发布包完整性门禁(`publint` + `attw`)、eslint、架构设计文档。
|
|
104
106
|
|
|
105
107
|
## 🚀 快速开始
|
|
106
108
|
|
|
@@ -176,8 +178,8 @@ PNG / PDF 不内置依赖:SVG 是通用中间格式,`resvg`、`sharp`、`rsv
|
|
|
176
178
|
|
|
177
179
|
## 📚 文档
|
|
178
180
|
|
|
179
|
-
- **架构设计文档** —— [`docs/architecture/`](./docs/architecture/README.md)
|
|
180
|
-
- **示例** —— [`examples/`](./examples/index.html) 目录提供 **
|
|
181
|
+
- **架构设计文档** —— [`docs/architecture/`](./docs/architecture/README.md):共 16 篇 —— 运行时链路 / 组件模型 / 坐标系与矩阵 / 渲染性能 / 事件 / 序列化 / 交互动画 / 多运行时兼容 / 路线图与边界 / Worker 与离屏渲染 / 视口缩放 / 对齐吸附 / 能力缺口分析 / 无障碍 / 应用驱动复盘 / 连线端点(插槽)扩展评估。
|
|
182
|
+
- **示例** —— [`examples/`](./examples/index.html) 目录提供 **88 个**可直接在浏览器运行的示例(图形、容器、事件、拖拽、连接线、动画、布局、文本、视口、对齐、插件、无障碍、性能基准等)。
|
|
181
183
|
|
|
182
184
|
## 🧪 工程化
|
|
183
185
|
|
|
@@ -232,7 +234,7 @@ export default class Relation extends ICEVisioLink {
|
|
|
232
234
|
## 📸 截图
|
|
233
235
|
|
|
234
236
|
> 截图由 `examples/` 下的示例页直接采集(Playwright、2× 像素比、**按内容包围盒裁切**,不含浏览器外壳与页面留白)。
|
|
235
|
-
> 全部
|
|
237
|
+
> 全部 88 个示例都可以在 [`examples/index.html`](./examples/index.html) 里点开运行。
|
|
236
238
|
|
|
237
239
|
**图元与样式** —— 形状库、渐变、阴影、虚线等(`examples/shapes/shapes-basic.html`)
|
|
238
240
|
|