跳转至

Export —— 从 Harmony 导出到 SVG、PDF、AI

Octo Vector Bridge 是双向的桥。导入器把矢量画面带 Harmony;Export 把一个 drawing 的矢量画面带出去 —— 以 SVGPDFAI 的形式,带着四个艺术层、逐点的精确线宽和真实颜色。

它在 Octo Tools 工具栏上有自己的按钮,就在导入器旁边:Octo Vector Bridge — Exporter

为什么需要它

Harmony 没有工作室能用的矢量导出。Write node 的 PDF 把每条线压成单一线宽、丢掉透明度、只导出 Line Art 和 Colour Art,而且网络里只要有效果或 rig 就会变成黑屏。utransform 根本不列出 SVG,它的 PDF 导出来是空白页。

Export 通过 Drawing.query.getData 读取的是绘图本身,不是渲染结果。因此它天生不受 rig、cutter 和效果影响,能看到全部四个艺术层,铅笔线也带着绘制时的线宽到达。

窗口

  1. Drawings to export —— Read 节点的树,每个 drawing 下面是它的四个 art layer。打开时已经填入 Node View 中选中的节点。列表头部的 + 按钮添加更多 —— From Node View selection,或从 From scene… 选择任意 Read 节点 —— 移除选中的 drawing。Frames 列显示该节点曝光了多少帧,在每个 art layer 上则显示其中有多少帧含有矢量。
  2. Frames —— All exposed(节点显示绘图的每一帧)、Current frame,或一个 Range
  3. Art layers —— 在树中按 drawing 勾选:Overlay、Line Art、Colour Art、Underlay。两类行会变灰,并在 Frames 列给出原因:bitmap 表示节点上该 art layer 的开关设为 Bitmap(Export 只写矢量,这个图层不会导出任何东西);empty 表示一个 Vector 图层在所有曝光帧上都没有画。空图层永远不会被称为 bitmap。
  4. Output —— 文件夹、格式布局,以及 Crop to contentSkip empty exposures 默认开启:art layer 上没有画面的曝光不会生成文件。关闭后会为它写一个空文件,让编号保持连续。

格式

格式 保留逐点线宽? 说明
SVG 是,以 data-widths 保存 往返格式:OVB 重新导入时压感完整保留
PDF —— 每条线一个线宽 Harmony 精确的填充、颜色与 alpha;到处都能打开
AI —— 每条线一个线宽 就是 PDF 字节加上 Illustrator 的扩展名(自 Illustrator 9 起 .ai 就是 PDF 容器);在 Illustrator 中以可编辑路径打开

PDF 与 AI 的格式本身没有可变线宽的描边,所以选中其中之一时窗口会显示一条常驻提示。如果需要压感在 OVB 之外也能画出来,请在矢量编辑器中把线条转换为填充轮廓 —— 几何和线宽数据都在文件里。

渐变填充在三种格式中都会保留:SVG 用 <linearGradient>/<radialGradient> 定义,PDF 和 AI 用真正的 shading。你在 Harmony 里摆放的手柄就是它的几何。

位图格式

Export 不只是矢量的出口。任何矢量 art layer 都可以写成像素,格式就是 Harmony 管线真正读取的那几种:TGAPNGJPGTIF

格式 透明度 说明
TGA Harmony 管线实际写出的格式,往返最稳妥
PNG 无损,到处都能打开,默认值
TIF 无损,适合离开 Harmony 的工作
JPG 有损,空背景上的画面会落在白色背景上

选中 JPG 时会一直显示提示,理由和 PDF 一样:它是唯一会改变图像的格式。

位图是从矢量生成的,按文档自身尺寸绘制。它不是渲染:没有摄像机,没有特效,没有合成。需要渲染画面时,请使用 Harmony 的 Write node。

节点上处于 Bitmap 模式的 art layer 只能以位图导出:里面没有可读的矢量,所以它的 Output 开关锁定在位图。

按 art layer 选择矢量或位图

每个 art layer 在树的第三列有一个 Output 开关:矢量位图,用的是导入器和 Octo Scene Assembler 相同的两个图标。它最终变成什么文件,在 Output 卡片里决定一次:SVG、PDF、AI 用 Vector Format,TGA、PNG、JPG、TIF 用 Bitmap Format。这和 Blender、Maya 导出器是同一个模型,学一次就够。

Bitmap 模式的 art layer 开关锁定在位图。选择 Single file, grouped 会禁用开关,因为合并文件是一个矢量文档;位图行不会进入其中,工具提示会说明原因。

位图输出按场景分辨率渲染,并裁切到摄像机画框:摄像机以外的画面不会导出。把鼠标放在 Bitmap Format 上会看到这条说明,让事实出现在做选择的地方。

布局

  • Separate files per art layer —— <node>/<OL|LA|CA|UL>/0001.svg。与 OVB 导入器读取的文件夹相同,因此导出结果能原位重新导入,每个艺术层落在自己的层上。
  • Single file, art layers as groups —— <node>/0001.svg,内含按绘制顺序排列的 <g id="UL"><g id="CA"><g id="LA"><g id="OL">。这是网站或 Illustrator 想要的形态。

Crop to content

关闭时,文件的 viewBox 是相机 field,正是导入器所期望的 —— 导出结果会回到原来的位置。开启时,viewBox 收紧到画面加一圈边距:图标周围不再有 field 大小的空白。裁切只改变 viewBox,别的什么都不改;两种情况下文件中的坐标完全相同。

往返

Separate files、不裁切,导出到一个文件夹;打开导入器,把该文件夹作为 drawing 添加。填充回来还是填充,铅笔线回来还是带压感的铅笔线,每个艺术层落在自己的层上。使这一切成立的读取器,正是导入器从节点拉取现有画面时使用的那一个,并且经过精确往返的测试。

长序列

Export 逐帧进行,可以在帧与帧之间取消。在多帧上暴露的同一个 drawing 只读取一次、每帧写一次,因此导入器的帧索引得以保留。