| 文章首页 |
|---|
| SVG编辑器软件:Inkscape高级教程 |
| SVG路径编辑与子路径及子路径的结合 |
| SVG转换路径与布尔操作 |
| SVG简化优化与创建SVG文本 |
5 SVG转换路径
Any shape or text object can be converted to path (Shift+Ctrl+C). This operation does not change the appearance of the object but removes all capabilities specific to its type (e.g. you can't round the corners of a rectangle or edit the text anymore); instead, you can now edit its nodes. Here are two stars - the left one is kept a shape and the right one is converted to path. Switch to node tool and compare their editability when selected:
An example image
而且,任何对象的轮廓stroke都可以转换为路径(“outline”)。下图中第一个是原始路径(无填充,黑色轮廓),第二个是执行轮廓转为路径Stroke to Path后(黑色填充,无轮廓):
6 布尔操作
路径Path菜单中命令可以将多个路径以布尔操作boolean operations的方式结合到一起:
布尔操作对应的快捷键也与相应的运算相适应(合并union对应加号,相减difference对应减号,等)。命令相减Difference和 排除Exclusion 只针对两个路径,其它操作可以应用于任意数量的对象。操作后的对象总是保留参与操作的底层对象的样式。
排除Exclusion 与结合Combine 操作有些类似,只不过,排除Exclusion 在原始对象相交的地方添加节点。分割Division 和 剪切路径Cut Path命令的区别在于前者用顶层路径将底层路径完全剪切,而后者只剪切轮廓,填充则完全完全删除(适用于将不用填充的轮廓分为数段)。
嵌入与扩展
Inscape不仅可以通过缩放,也可以通过偏移offsetting来扩展和收缩形状,即将路径上的点沿法线方向移动。相应的命令为:嵌入Inset (Ctrl+() 和 扩展Outset (Ctrl+))。下图中给出了原始路径(红色)以及通过嵌入和扩展产生的新路径:
正常情况下,嵌入Inset 和扩展Outset命令生成的对象是路径(如果原始对象不是路径,将先转为路径)。通常,更方便的命令是动态偏移Dynamic Offset (Ctrl+J),通过一个拖动控制柄(同形状的控制柄类似)来控制偏移量。选中下面的对象,切换到节点工具,拖动控制柄到一个合适的位置:
这种动态偏移对象dynamic offset object会记录原始位置,多次调整偏移时不会产生退化(degrade)。如果不需要再调整,可以将偏移对象转为路径。
也许,更有效的是关联偏移linked offset,与动态偏移类似,但原始对象仍然保留,并且可以编辑。一个原始对象可以有多个关联偏移。下图中,原始对象是红色的,其中一个关联偏移轮廓是黑色的,没有填充,另一个有黑色填充,但没有轮廓。
选择红色的对象,编辑其节点,观察关联偏移对象的变化。选择关联对象,拖动控制柄,调节偏移量。你会注意到,移动和改变原始对象影响到关联偏移对象,而偏移对象的移动和变换是独立的,同时保持和源对象的链接关系。
如果你喜欢这篇文章,请阅读本文相关的下列内容:
