是否有一种功能或方法来剪切视图框外的路径而不是隐藏它?
我正在使用svg-edit,它有一个视图框,一个画布区域。在画布之外绘制的所有内容都是隐藏的。但是,当收集编辑器的输出并将其粘贴到图形编辑器(如Inkscape)中时,将显示整个图形。我希望视图框外的绘图完全从编辑器的输出中剪切。因此,例如,如果我有一个在画布外面一半的圆圈,那么编辑器的输出将是半圈而不是整个圆圈只有一半隐藏。
我想改变主题路径本身的几何形状,而不仅仅是将其隐藏起来。
我正在对svg-edit进行修改:http://code.google.com/p/svg-edit/
答案 0 :(得分:2)
执行此操作的一种方法是将clip-path
应用于根svg元素。
如果你想要它可以是一个简单的矩形区域,或另一个更复杂的形状,如下例所示:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
viewBox="-100 -100 300 300"
clip-path="url(#clip)">
<defs>
<clipPath id="clip">
<rect width="100" height="100" rx="10"/>
<path d="M40 99l10 11 10 -11z"/>
</clipPath>
</defs>
<rect id="background" width="120" height="120" fill="slateblue"/>
<image xlink:href="images/man.png" width="100" height="110"
preserveAspectRatio="xMidYMax meet"/>
</svg>
在线查看here。
在您的情况下,您可能只希望<rect>
元素中只有一个<clipPath>
与viewBox具有相同的尺寸。