.bbart艺术库
由用户管理的可复用艺术作品集合。基于JSON、按内容去重、自包含。
.bbart文档是一个艺术作品片段集合,用于在多个项目中重复使用:徽标、装饰、常见形状以及捕获的选区。艺术库面板可加载和编辑这些文档。
与表示单个进行中设计的.lzrproj项目不同,.bbart文档是经过组织的库,专为共享、版本控制和重复使用而设计。
包含的内容
| 字段 | 说明 |
|---|---|
library_id | UUID。用于唯一标识库(不是根据文档名标识)。 |
name | 显示名称。可编辑。 |
items[] | 每个项目都有自己的id、类型、几何数据、缩略图、标签和类别。 |
项目类型
- 外部文档:引用源图像或矢量文档。项目携带原始字节(在库内按内容哈希去重)。
- 选区快照:从项目中捕获的选区的扁平化版本。文本会扁平化为几何图形,接收方无需依赖字体。包含用于未来重新编辑的
source_text_metadata。
缩略图
每个项目都有一个由前端生成并打包到文档中的缩略图。加载库时无需实时渲染。
去重
在单个.bbart文档内,相同的栅格字节(按内容哈希判断)只存储一次,并由多个项目引用。当你将同一图像重新导入为多个项目时,这可以减小文档大小。
如何读取和写入
- GUI:艺术库面板可创建、加载、保存、导入和导出。
- CLI:目前未提供。
Beam Bench打开.bbart文档后,文档会在编辑期间保留在内存中。写穿持久化:每个变更操作都会立即写入磁盘。如果磁盘写入失败,则保留内存中的变更,库会获得一个save_error,并且在重试之前会阻止破坯性操作。
从旧版JSON迁移
旧版应用数据中的*.json库会在首次启动时自动迁移为同目录下的.bbart文档。原始.json文档会保留。
共享库
.bbart文档具有可移植性。通过电子邮件发送或上传该文档;接收方可使用艺术库面板→加载将其打开。
如果两个.bbart文档共享同一个library_id(例如你复制了其中一个),后加载的文档会被重新映射,生成新的id,重写文档,并显示警告。这样可以防止id冲突被静默发生。
边界情况
- 保存失败(文档权限、文档被锁定或磁盘已满)时,库会显示保存错误,并在下一次保存成功前禁用破坯性操作。状态不会被静默回滚。
- 在磁盘上重命名
.bbart文档只会更改显示名称。library_id和内容保持不变。 - 两个文档使用相同的显示名称没有问题,只要它们的
library_id不同即可。