Tutorial | 高级 本教程包括:复制/粘贴、节点编辑、手绘和Bezier曲线、路径操作、布尔操作、偏移、简化、以及文本工具。 Use Ctrl+arrows, mouse wheel, or middle button drag to scroll the page down. For basics of object creation, selection, and transformation, see the Basic tutorial in HelpTutorials. 粘贴操作 After you copy some object(s) by Ctrl+C or cut by Ctrl+X, the regular Paste command (Ctrl+V) pastes the copied object(s) right under the mouse cursor or, if the cursor is outside the window, to the center of the document window. However, the object(s) in the clipboard still remember the original place from which they were copied, and you can paste back there by Paste In Place (Ctrl+Alt+V). Another command, Paste Style (Shift+Ctrl+V), applies the style of the (first) object on the clipboard to the current selection. The “style” thus pasted includes all the fill, stroke, and font settings, but not the shape, size, or parameters specific to a shape type, such as the number of tips of a star. Yet another set of paste commands, Paste Size, scales the selection to match the desired size attribute of the clipboard object(s). There are a number of commands for pasting size and are as follows: Paste Size, Paste Width, Paste Height, Paste Size Separately, Paste Width Separately, and Paste Height Separately. Paste Size scales the whole selection to match the overall size of the clipboard object(s). Paste Width/Paste Height scale the whole selection horizontally/vertically so that it matches the width/height of the clipboard object(s). These commands honor the scale ratio lock on the Selector Tool controls bar (between W and H fields), so that when that lock is pressed, the other dimension of the selected object is scaled in the same proportion; otherwise the other dimension is unchanged. The commands containing “Separately” work similarly to the above described commands, except that they scale each selected object separately to make it match the size/width/height of the clipboard object(s). Clipboard is system-wide - you can copy/paste objects between different Inkscape instances as well as between Inkscape and other applications (which must be able to handle SVG on the clipboard to use this). 手绘和规则路径 创建任意形状的最简单的方法是使用铅笔(手绘)工具(F6): If you want more regular shapes, use the Pen (Bezier) tool (Shift+F6): With the Pen tool, each click creates a sharp node without any curve handles, so a series of clicks produces a sequence of straight line segments. click and drag creates a smooth Bezier node with two collinear opposite handles. Press Shift while dragging out a handle to rotate only one handle and fix the other. As usual, Ctrl limits the direction of either the current line segment or the Bezier handles to 15 degree increments. Pressing Enter finalizes the line, Esc cancels it. To cancel only the last segment of an unfinished line, press Backspace. 在手绘和bezier工具模式下,选中路径的两端都会显示一个方形的锚点anchors,在这些锚点上可以继续绘图,从而延长路径,或使其封闭(从一个锚点画到另一个锚点),而不产生新的路径。 编辑路径 形状工具创建的是形状,而钢笔和铅笔工具创建的是路径。路径由直线和Bezier曲线构成,像其他对象一样,路径也可以设置任意类型的填充和轮廓属性。但与形状不同的是,修改路径时可以随意调整节点和(直线或曲线)段,而不是预先设置好的控制柄。切换到节点工具(F2),然后选择下面的路径: You will see a number of gray square nodes on the path. These nodes can be selected by click, Shift+click, or by dragging a rubberband - exactly like objects are selected by the Selector tool. You can also click a path segment to automatically select the adjacent nodes. Selected nodes become highlighted and show their node handles - one or two small circles connected to each selected node by straight lines. The ! key inverts node selection in the current subpath(s) (i.e. subpaths with at least one selected node); Alt+! inverts in the entire path. Paths are edited by dragging their nodes, node handles, or directly dragging a path segment. (Try to drag some nodes, handles, and path segments of the above path.) Ctrl works as usual to restrict movement and rotation. The arrow keys, Tab, [, ], <, > keys with their modifiers all work just as they do in selector, but apply to nodes instead of objects. You can add nodes anywhere on a path by either double clicking or by Ctrl+Alt+click at the desired location. You can delete nodes with Del or Ctrl+Alt+click. When deleting nodes it will try to retain the shape of the path, if you desire for the handles of the adjacent nodes to be retracted (not retaining the shape) you can delete with Ctrl+Del. Additionally, you can duplicate (Shift+D) selected nodes. The path can be broken (Shift+B) at the selected nodes, or if you select two endnodes on one path, you can join them (Shift+J). A node can be made cusp (Shift+C), which means its two handles can move independently at any angle to each other; smooth (Shift+S), which means its handles are always on the same straight line (collinear); symmetric (Shift+Y), which is the same as smooth, but the handles also have the same length; and auto-smooth (Shift+A), a special node that automatically adjusts the handles of the node and surrounding auto-smooth nodes to maintain a smooth curve. When you switch the type of node, you can preserve the position of one of the two handles by hovering your mouse over it, so that only the other handle is rotated/scaled to match. Also, you can retract a node's handle altogether by Ctrl+clicking on it. If two adjacent nodes have their handles retracted, the path segment between them is a straight line. To pull out the retracted node, Shift+drag away from the node. 子路径和结合 一个路径可以包含数个子路径subpath。每个子路径中的节点互相连接,子路径与子路径之间则是断开的。左下图,三个子路径组合为一个路径,右下图中则互相独立,各自为一个路径: 要注意的是,复合路径并不等同于群组,它是一个单独的对象。如果你选中左上的对象,然后切换到节点工具,将会看到,三个子路径上的节点都显现出来,而在右侧,每次只能选中一个路径进行节点编辑。 Inkscape can Combine paths into a compound path (Ctrl+K) and Break Apart a compound path into separate paths (Shift+Ctrl+K). Try these commands on the above examples. Since an object can only have one fill and stroke, a new compound path gets the style of the first (lowest in z-order) object being combined. 在合并有填充的路径时,如果路径之间有重叠区域,合并后,重叠部分的填充将消失: 这是创建内部有孔的形状的最简单的方法。路径工具的高级操作请参考下面的“布尔操作”。 转换为路径 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: Moreover, you can convert to a path (“outline”) the stroke of any object. Below, the first object is the original path (no fill, black stroke), while the second one is the result of the Stroke to Path command (black fill, no stroke): 布尔操作 The commands in the Path menu let you combine two or more objects using boolean operations: 原始形状 Union(Ctrl++) 相减Difference (Ctrl+-)(底部减去顶部) 交集Intersection(Ctrl+*) 排除Exclusion(Ctrl+^) 分割Division(Ctrl+/) 剪切路径Cut Path(Ctrl+Alt+/) The keyboard shortcuts for these commands allude to the arithmetic analogs of the boolean operations (union is addition, difference is subtraction, etc.). The Difference and Exclusion commands can only apply to two selected objects; others may process any number of objects at once. The result always receives the style of the bottom object. The result of the Exclusion command looks similar to Combine (see above), but it is different in that Exclusion adds extra nodes where the original paths intersect. The difference between Division and Cut Path is that the former cuts the entire bottom object by the path of the top object, while the latter only cuts the bottom object's stroke and removes any fill (this is convenient for cutting fill-less strokes into pieces). 嵌入与扩展 Inkscape can expand and contract shapes not only by scaling, but also by offsetting an object's path, i.e. by displacing it perpendicular to the path in each point. The corresponding commands are called Inset (Ctrl+() and Outset (Ctrl+)). Shown below is the original path (red) and a number of paths inset or outset from that original: The plain Inset and Outset commands produce paths (converting the original object to path if it's not a path yet). Often, more convenient is the Dynamic Offset (Ctrl+J) which creates an object with a draggable handle (similar to a shape's handle) controlling the offset distance. Select the object below, switch to the node tool, and drag its handle to get an idea: 这种动态偏移对象dynamic offset object会记录原始位置,多次调整偏移时不会产生退化(degrade)。如果不需要再调整,可以将偏移对象转为路径。 也许,更有效的是关联偏移linked offset,与动态偏移类似,但原始对象仍然保留,并且可以编辑。一个原始对象可以有多个关联偏移。下图中,原始对象是红色的,其中一个关联偏移轮廓是黑色的,没有填充,另一个有黑色填充,但没有轮廓。 Select the red object and node-edit it; watch how both linked offsets respond. Now select any of the offsets and drag its handle to adjust the offset radius. Finally, note how you can move or transform the offset objects independently without losing their connection with the source. 简化 The main use of the Simplify command (Ctrl+L) is reducing the number of nodes on a path while almost preserving its shape. This may be useful for paths created by the Pencil tool, since that tool sometimes creates more nodes than necessary. Below, the left shape is as created by the freehand tool, and the right one is a copy that was simplified. The original path has 28 nodes, while the simplified one has 17 (which means it is much easier to work with in node tool) and is smoother. The amount of simplification (called the threshold) depends on the size of the selection. Therefore, if you select a path along with some larger object, it will be simplified more aggressively than if you select that path alone. Moreover, the Simplify command is accelerated. This means that if you press Ctrl+L several times in quick succession (so that the calls are within 0.5 sec from each other), the threshold is increased on each call. (If you do another Simplify after a pause, the threshold is back to its default value.) By making use of the acceleration, it is easy to apply the exact amount of simplification you need for each case. Besides smoothing freehand strokes, Simplify can be used for various creative effects. Often, a shape which is rigid and geometric benefits from some amount of simplification that creates cool life-like generalizations of the original form - melting sharp corners and introducing very natural distortions, sometimes stylish and sometimes plain funny. Here's an example of a clipart shape that looks much nicer after Simplify: 原始的 轻微简化 严重简化 创建文本 Inkscape可以创建复杂的文本。也可以很方便地绘制简短的文字对象,例如标题,标识,标语,流程图等中的文字。本节介绍Inkscape中文本工具的基本功能。 Creating a text object is as simple as switching to the Text tool (F8), clicking somewhere in the document, and typing your text. To change font family, style, size, and alignment, open the Text and Font dialog (Shift+Ctrl+T). That dialog also has a text entry tab where you can edit the selected text object - in some situations, it may be more convenient than editing it right on the canvas (in particular, that tab supports as-you-type spell checking). 像其它工具一样,文本工具模式下可以选择其自身类型的对象——文本对象——点击选择,将输入光标放到文本中的任意位置(比如这个段落)。 One of the most common operations in text design is adjusting spacing between letters and lines. As always, Inkscape provides keyboard shortcuts for this. When you are editing text, the Alt+< and Alt+> keys change the letter spacing in the current line of a text object, so that the total length of the line changes by 1 pixel at the current zoom (compare to Selector tool where the same keys do pixel-sized object scaling). As a rule, if the font size in a text object is larger than the default, it will likely benefit from squeezing letters a bit tighter than the default. Here's an example: 原始的 字间距减小, Inspiration Inspiration 紧凑一些的作为标题看起来更好一些,但仍然不是很完美:字间距并不一致,例如,“a"和"t"的间隔比"t"和"i"的间距大。在一些质量比较差的字体中,(尤其是字体比较大的情况下)这种不均衡的紧排更明显;但是,不管任何字体,总会存在这种文本组合,需要手工调整松紧。 Inkscape makes these adjustments really easy. Just move your text editing cursor between the offending characters and use Alt+arrows to move the letters right of the cursor. Here is the same heading again, this time with manual adjustments for visually uniform letter positioning: 字间距减小,某些字之间手工调节 Inspiration In addition to shifting letters horizontally by Alt+Left or Alt+Right, you can also move them vertically by using Alt+Up or Alt+Down: Inspiration Of course you could just convert your text to path (Shift+Ctrl+C) and move the letters as regular path objects. However, it is much more convenient to keep text as text - it remains editable, you can try different fonts without removing the kerns and spacing, and it takes much less space in the saved file. The only disadvantage to the “text as text” approach is that you need to have the original font installed on any system where you want to open that SVG document. Similar to letter spacing, you can also adjust line spacing in multi-line text objects. Try the Ctrl+Alt+< and Ctrl+Alt+> keys on any paragraph in this tutorial to space it in or out so that the overall height of the text object changes by 1 pixel at the current zoom. As in Selector, pressing Shift with any spacing or kerning shortcut produces 10 times greater effect than without Shift. XML编辑器 The ultimate power tool of Inkscape is the XML editor (Shift+Ctrl+X). It displays the entire XML tree of the document, always reflecting its current state. You can edit your drawing and watch the corresponding changes in the XML tree. Moreover, you can edit any text, element, or attribute nodes in the XML editor and see the result on your canvas. This is the best tool imaginable for learning SVG interactively, and it allows you to do tricks that would be impossible with regular editing tools. 小结 这个教程只展示了Inkscape功能的一小部分,我们希望你能喜欢。欢迎探索它的功能,展示你的灵感。更多信息,最新版本,以及寻求用户社区的帮助,请登录www.inkscape.org Bulia Byak; Jonathan Leighton; Josh Andler; Colin Marquardt; Maren Hachmann; Nicolas Dufour; Gellért Gyuris 柳小勤Liu Xiaoqin — 2008 Esteban Capella — 2019