Skip to content

Commit 890d4e3

Browse files
i18n(ko-KR): update svg-optimization.mdx (#13573)
Co-authored-by: Yan <61414485+yanthomasdev@users.noreply.github.com>
1 parent 8b36eac commit 890d4e3

File tree

1 file changed

+55
-18
lines changed

1 file changed

+55
-18
lines changed

src/content/docs/ko/reference/experimental-flags/svg-optimization.mdx

Lines changed: 55 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -48,17 +48,22 @@ SVG는 빌드 과정에서 최적화되어 프로덕션 빌드 시 파일 크기
4848

4949
## 구성
5050

51-
최적화 동작을 사용자 정의하기 위해 [SVGO 구성 객체](https://github.com/svg/svgo/blob/66d503a48c6c95661726262a3068053c429b06a9/lib/types.ts#L335)를 전달할 수 있습니다.
51+
최적화 동작을 사용자 정의하기 위해 [SVGO 구성 객체](https://github.com/svg/svgo#configuration)를 전달할 수 있습니다.
5252

5353
```js title="astro.config.mjs"
5454
export default defineConfig({
5555
experimental: {
5656
svgo: {
57+
multipass: true,
58+
floatPrecision: 2,
5759
plugins: [
5860
'preset-default',
61+
'removeXMLNS',
5962
{
60-
name: 'removeViewBox',
61-
active: false
63+
name: "removeXlink",
64+
params: {
65+
includeLegacy: true
66+
}
6267
}
6368
]
6469
}
@@ -73,17 +78,34 @@ export default defineConfig({
7378

7479
SVG 컴포넌트 가져오기를 최적화하는 데 사용될 [SVGO 플러그인](https://svgo.dev/docs/plugins/)의 배열입니다.
7580

76-
이는 SVGO의 `preset-default` 플러그인 모음을 포함하여 ID 이름으로 모든 플러그인을 포함할 수 있습니다. 플러그인은 필요에 따라 활성화하거나 비활성화하기 위해 `name``active` 상태를 모두 포함하는 객체로 전달될 수도 있습니다.
81+
여기에는 SVGO의 [`preset-default`](https://svgo.dev/docs/preset-default/) 플러그인 컬렉션, 개별 내장 플러그인 또는 [커스텀 플러그인](https://svgo.dev/docs/plugins-api/)이 포함될 수 있습니다.
82+
83+
플러그인의 기본 구성을 사용하려면 배열에 이름을 추가하세요. 더 세밀하게 제어하려면 `overrides` 매개변수를 사용하여 `preset-default` 내의 특정 플러그인을 사용자 정의하거나, 플러그인의 `name`이 포함된 객체를 전달하여 개별 매개변수를 재정의하세요.
7784

7885
```js title="astro.config.mjs"
7986
export default defineConfig({
8087
experimental: {
8188
svgo: {
8289
plugins: [
83-
'preset-default',
8490
{
85-
name: 'removeViewBox',
86-
active: false
91+
name: 'preset-default',
92+
params: {
93+
overrides: {
94+
convertPathData: false,
95+
convertTransform: {
96+
degPrecision: 1,
97+
transformPrecision: 3
98+
},
99+
inlineStyles: false
100+
},
101+
},
102+
},
103+
'removeXMLNS',
104+
{
105+
name: "removeXlink",
106+
params: {
107+
includeLegacy: true
108+
}
87109
}
88110
]
89111
}
@@ -93,36 +115,42 @@ export default defineConfig({
93115

94116
### 기타 구성 옵션
95117

96-
[다른 SVGO 구성 옵션](https://github.com/svg/svgo/blob/66d503a48c6c95661726262a3068053c429b06a9/lib/types.ts#L335)(예: `floatPrecision``multipass`)을 구성 객체에 직접 전달할 수도 있습니다.
118+
특히 `floatPrecision``multipass`를 비롯하여 구성 객체에 직접 전달할 수 있는 몇 가지 [SVGO 구성 옵션](https://github.com/svg/svgo/blob/66d503a48c6c95661726262a3068053c429b06a9/lib/types.ts#L335) 있습니다.
97119

98120
```js title="astro.config.mjs"
99121
export default defineConfig({
100122
experimental: {
101123
svgo: {
102-
floatPrecision: 2,
103-
multipass: true
124+
multipass: true,
125+
floatPrecision: 2
104126
}
105127
}
106128
})
107129
```
108130

131+
`multipass` 옵션은 더 이상 최적화할 수 없을 때까지 최적화 엔진을 여러 번 실행할지 여부를 설정합니다. `floatPrecision` 옵션은 전역적으로 유지할 소수점 자릿수를 설정하지만, 플러그인의 `params` 속성에 사용자 정의 값을 지정하여 특정 플러그인에 대해 재정의할 수 있습니다.
132+
109133
## 일반적인 사용 사례
110134

111-
SVGO는 각 플러그인을 개별적으로 추가하는 것보다 더 편리한 최적화가 포함된 다양한 [기본 플러그인 목록](https://svgo.dev/docs/preset-default/)을 제공합니다. 하지만 필요에 따라 더 구체적으로 사용자 정의해야 할 수도 있습니다. 예를 들어, 특정 항목을 제거하거나 상황에 따라 더 적극적으로 정리할 수 있습니다.
135+
SVGO는 권장되는 최적화가 포함된 광범위한 [기본 플러그인 목록](https://svgo.dev/docs/preset-default/)을 제공합니다. 이 프리셋을 사용하는 것이 각 플러그인을 개별적으로 추가하는 것보다 편리하지만, 추가적인 사용자 정의가 필요할 수 있습니다. 예를 들어, 특히 애니메이션을 사용하는 경우 상황에 따라 항목을 매우 공격적으로 제거하거나 정리할 수 있습니다.
112136

113137
### 특정 속성 유지하기
114138

115-
SVGO가 기본적으로 제거하는 `viewBox` 같은 특정 SVG 속성을 유지하고 싶을 수도 있습니다.
139+
SVGO가 기본적으로 인라인화하거나 제거하는 `<style>` 같은 특정 SVG 속성 및 요소를 유지하고 싶을 있습니다.
116140

117141
```js title="astro.config.mjs"
118142
export default defineConfig({
119143
experimental: {
120144
svgo: {
121145
plugins: [
122-
'preset-default',
123146
{
124-
name: 'removeViewBox',
125-
active: false // viewBox 속성을 유지합니다.
147+
name: 'preset-default',
148+
params: {
149+
overrides: {
150+
inlineStyles: false, // CSP 해싱을 위해 스타일 요소를 유지합니다
151+
removeDesc: false // 내용에 관계없이 요소를 유지합니다
152+
}
153+
}
126154
}
127155
]
128156
}
@@ -150,15 +178,24 @@ export default defineConfig({
150178
})
151179
```
152180

153-
### 정밀도 사용자 정의하기
181+
### 현대적인 HTML5에서의 인라인화를 위한 최적화
154182

155-
경로 데이터의 숫자 값 정밀도를 제어합니다.
183+
인라인 SVG는 `xmlns` 속성이 필요하지 않으며 SVG 2 사양으로 안전하게 변환될 수 있습니다. 이러한 목적으로 `removeXMLNS``removeXlink` 플러그인을 사용하는 것을 권장합니다:
156184

157185
```js title="astro.config.mjs"
158186
export default defineConfig({
159187
experimental: {
160188
svgo: {
161-
floatPrecision: 2
189+
plugins: [
190+
'preset-default',
191+
'removeXMLNS',
192+
{
193+
name: "removeXlink",
194+
params: {
195+
includeLegacy: true
196+
}
197+
}
198+
]
162199
}
163200
}
164201
})

0 commit comments

Comments
 (0)