[spine-utils.js (line 35)](/Users/tianmokeji/Desktop/特效/SpineViewer/SpineViewer/js/spine-utils.js:35) 统一拦截绝对路径、..、Windows 盘符、UNC、URI、控制字符和符号链接越界。 跨素材贴图只能使用已枚举、验证且位于 Eagle 素材目录内的文件。 [spine-render.js (line 62)](/Users/tianmokeji/Desktop/特效/SpineViewer/SpineViewer/js/spine-render.js:62) 已删除未经验证的路径备用拼接。 自动缩略图只写当前回调提供的 dest,不再调用接口改写同组素材。 已删除后台整组补刷进程及 relatedDataPaths。 [viewer/spine.html (line 482)](/Users/tianmokeji/Desktop/特效/SpineViewer/SpineViewer/viewer/spine.html:482) 的手动缩略图只针对当前素材,并核对素材 ID、文件名和扩展名。 当前素材已有自定义缩略图时,会提示替换后无法自动恢复并要求确认。 手动生成的中间文件改存系统临时目录,API 失败时不再直接写 Eagle 素材目录。 八种语言文案及 README 已同步。 处理历史日志遗留问题
40 lines
2.5 KiB
Markdown
40 lines
2.5 KiB
Markdown
# SpineViewer 1.1.1
|
|
|
|
Eagle 的离线 Spine 骨骼动画预览插件,支持 Spine 3.4、3.5、3.6、3.7、3.8、4.0、4.1、4.2、4.3。
|
|
|
|
本包为**windows和macos通用包**,同时适用于 **Windows x64** 与 **macOS Apple 芯片**。
|
|
|
|
## 功能与使用
|
|
|
|
1. 将同一套骨骼文件(`.skel` / `.skel.bytes` / Spine `.json`)、图集(`.atlas` / `.atlas.txt`)和配套贴图一起导入 Eagle,建议放在同一个 Eagle 文件夹内,并保留文件名配对关系。
|
|
2. 打开骨骼或图集文件即可预览。普通图片仍使用 Eagle 原生预览。
|
|
3. 支持动画和皮肤切换、播放/暂停(空格)、循环、速度、时间轴拖动、缩放适配、背景与预乘 Alpha(PMA)切换。
|
|
4. 自动生成带 Spine 标记和版本号的当前素材缩略图,也可在预览器中主动将当前帧设为当前素材的自定义缩略图。已有自定义缩略图时会先确认;插件不会自动改写同组其他素材。
|
|
5. 若导入时资源尚未配齐,会先显示回退图;补齐后请使用 Eagle 的“刷新缩略图”重新生成。
|
|
|
|
## 安全与隐私
|
|
|
|
- Atlas 贴图只允许安全的相对路径;绝对路径、`..`、盘符、UNC、URI 和越界符号链接会被拒绝。跨素材配对只使用当前 Eagle 素材库中已枚举并验证的素材。
|
|
- 自动缩略图只写 Eagle 为当前素材提供的目标,不会改写同组其他素材。手动设置也只作用于当前素材;已有自定义缩略图时会先确认。
|
|
- 诊断日志默认关闭。显式设置 `SPINEVIEWER_DEBUG_LOG=1` 时,日志只写系统临时目录,不写插件目录,也不会进入安装包。
|
|
|
|
## 平台与依赖
|
|
|
|
`node_modules/@napi-rs/` 下并排携带三个包,运行时由 `@napi-rs/canvas` 依据 `process.platform` 与 `process.arch` 自动选择,未匹配的平台包不会被加载:
|
|
|
|
| 平台 | 原生包目录 |
|
|
| --- | --- |
|
|
| Windows x64 | `canvas-win32-x64-msvc` |
|
|
| macOS Apple 芯片 | `canvas-darwin-arm64` |
|
|
| 公共代码(两平台共用) | `canvas` |
|
|
|
|
原生包版本均为 **0.1.66**。
|
|
|
|
清单使用 `platform: all` / `arch: all`。本包**未包含 macOS Intel 与 Windows ARM64 的原生二进制**:这两种环境下动画预览仍可正常使用。
|
|
|
|
## 多语言
|
|
|
|
界面支持简体中文、繁体中文、English、日本語、한국어、Русский、Español、Deutsch,随 Eagle 的界面语言切换,无法识别时回退到简体中文。文案位于 `_locales/`。
|
|
|
|
第三方许可证见 `LICENSES/`,分发已保留。
|