FIMO 输出的 HTML 不保留图层可见性,因其导出是快照式扁平渲染,不序列化图层状态;虽可手动扩展 SVG+JS 实现控制,但需导出前保存状态、导出后缝合,FIMO 本身不提供自动支持。

不包含。FIMO 默认输出的 HTML 不保存图层可见性状态,所有图层在生成的 HTML 中默认为可见,visibility 或类似控制图层显隐的参数不会被导出。
为什么 FIMO 输出 HTML 没有保留图层可见性
FIMO 的 HTML 导出功能本质是将当前视图“快照式”渲染为静态 HTML + Canvas/SVG,而非导出可交互的完整工程状态。它不序列化图层树结构、不写入图层元数据(如 visible、opacity、locked),只提取当前可见区域的像素或矢量描边。
- 导出时仅读取当前画布的合成结果,不访问图层管理器内部状态
- HTML 中的
或元素是扁平化渲染产物,无图层层级语义 - 没有生成配套的 JSON 配置文件来记录图层属性(对比 Sketch 或 Figma 的插件导出行为)
FIMO HTML 中能否手动添加图层可见性控制
可以,但需自行扩展:原始输出不可控,必须在导出后二次修改 HTML/JS 代码,注入图层开关逻辑。
- 需将原图层拆分为独立
或容器,并打上data-layer-id和data-visible="true" - 添加 JS 控制按钮,切换对应容器的
style.display或visibility - 注意:FIMO 不提供图层 ID 映射表,需人工维护图层顺序与 DOM 节点的对应关系
- 若原输出用的是单个
,则无法事后分离图层——必须改用 SVG 模式导出并手动预处理
替代方案:用 SVG 导出 + 外部脚本还原可见性
如果必须保留可见性,优先选 SVG 导出(FIMO 支持),再用脚本注入 visibility 属性。
立即学习“前端免费学习笔记(深入)”;
- FIMO 的 SVG 输出会为每个图形元素保留
id(如layer-3-path-1),但不带visibility属性 - 可在导出前用 FIMO 脚本(如 Python 插件或 JS API)遍历图层,生成映射 JSON:
{"layer-3": {"visible": false, "opacity": 0.7}} - 导出后合并 JSON 到 HTML,用 JS 动态设置
document.getElementById('layer-3').style.display = 'none' - 注意:FIMO 的 JS API(
fimo.app.layers)在导出时不可用,该脚本只能在编辑态运行,不能嵌入导出流程
真正难点不在 HTML 是否“能显示”可见性,而在于 FIMO 缺乏导出时的状态捕获机制——你得在导出前把图层状态存下来,导出后再靠外部逻辑缝合回去。没人帮你自动做这一步。











