# SVG渲染器（[name]）

[name]被用于使用SVG来渲染几何数据，所产生的矢量图形在以下几个方面十分有用：

- 动画标志（logo）或者图标（icon）
- 可交互的2D或3D图表或图形
- 交互式地图
- 复杂的或包含动画的用户界面

[name]具有很多优势。它产生清晰并且锐利的图像输出，它和实际视口分辨率无关。
SVG元素可以通过CSS来控制样式；并且由于它可以添加诸如标题或者描述文字之类的元数据（对于搜索引擎或者屏幕阅读器十分有用），因此它具有十分良好的可访问性。

然而，SVG也有一些十分重要的限制：

- 没有高级的着色器
- 不支持纹理
- 不支持阴影

## 进口

[name] 是一个附加组件，必须显式导入。 See [link:#manual/introduction/Installation Installation / Addons].

`import { SVGRenderer } from 'three/addons/renderers/SVGRenderer.js';`

## 例子

[example:svg_lines lines]
[example:svg_sandbox sandbox]

## 构造函数

### [name]()

## 方法

### [method:undefined clear]()

告诉渲染器来清除其绘图表面。

### [method:Object getSize]()

返回一个包含有渲染器宽和高的对象。

### [method:undefined render]( [param:Scene scene], [param:Camera camera] )

使用[page:Camera camera]来渲染一个[page:Scene scene]。

### [method:undefined setClearColor]( [param:Color color], [param:number alpha] )

设置clearColor（空白颜色）以及clearAlpha（空白Alpha）。

### [method:undefined setPrecision]( [param:Number precision] )

设置用于创建路径的数据的精度。

### [method:undefined setQuality]()

设置渲染质量。可能的值有*low*和*high*（默认值）。

### [method:undefined setSize]( [param:Number width], [param:Number height] )

改变渲染器尺寸为(width, height)。

## 源代码

[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/renderers/SVGRenderer.js examples/jsm/renderers/SVGRenderer.js]