Post

🌰 [React] SVG 이미지λ₯Ό 톡해 404 page ꡬ좕

ν‰μ†Œμ— 이미지λ₯Ό 넣닀보면 ν™•μž₯μžκ°€ svg 인 νŒŒμΌμ„ λ³Ό 수 μžˆλ‹€.

png, jpg λ“± μ—¬λŸ¬ ν™•μž₯μžκ°€ μžˆμ§€λ§Œ μœ λ… μ•„μ΄μ½˜ λΆ€λΆ„μ—μ„œλŠ” svg λ₯Ό μ‚¬μš©μ„ 많이 ν•˜λŠ” 것 κ°™λ‹€.

λ”°λΌμ„œ 이번 νŽ˜μ΄μ§€μ—μ„œλŠ” svg 에 λŒ€ν•΄ μžμ„Ένžˆ μ•Œμ•„λ³΄κ³  svg λ₯Ό 톡해

ν•œ μ΄λ―Έμ§€λ‘œ 404 νŽ˜μ΄μ§€ 핸듀링 ν•˜λŠ” 것을 λͺ©ν‘œλ‘œ ν•˜λ € ν•œλ‹€.

SVG λž€?

Scalable Vector Graphics 의 μ•½μž, 벑터 기반 κ·Έλž˜ν”½ 파일 ν˜•μ‹

XML 기반 파일으둜 λ©”λͺ¨μž₯κ³Ό 같은 λ¬Έμ„œ νŽΈμ§‘κΈ°λ‘œ νŽΈμ§‘μ΄ κ°€λŠ₯ν•˜λ‹€.

크기λ₯Ό μ‘°μ ˆν•΄λ„ ν’ˆμ§ˆμ΄ μ €ν•˜λ˜μ§€ μ•Šμ•„ ν™”μ§ˆμ΄ 깨지지 μ•ŠλŠ”λ‹€ λΌλŠ” νŠΉμ§•μ΄ μžˆλŠ”λ°

μ—¬κΈ°μ„œ λ²‘ν„°κΈ°λ°˜ 이미지가 무엇인지에 λŒ€ν•΄ μ•Œμ•„λ³΄μž

Vector vs Raster

VectorRaster
μˆ˜ν•™ 곡식을 톡해 컴퓨터가 λžœλ”λ§ν”½μ…€λ‘œ ꡬ성
둜고, μ•„μ΄μ½˜μ— 적합사진에 적합
EPS, SVG, AIGIF, JPG, PNG
  • Raster λŠ” ν”½μ…€ ν•˜λ‚˜ν•˜λ‚˜κ°€ 이루어져 μžˆμ–΄ 크기가 μ •ν•΄μ Έ μžˆμ–΄ 동적이지 μ•ŠμŒ
  • Vector λŠ” 직접 κ·Έλ¦¬λŠ” 방법을 벑터이미지λ₯Ό 톡해 κ·Έλ¦¬λŠ” κ²ƒμœΌλ‘œ μ‚¬μ΄μ¦ˆμ— μ œμ•½λ˜μ§€ μ•ŠμŒ
  • ν•˜μ§€λ§Œ λ„ˆλ¬΄ λ³΅μž‘ν•œ μ΄λ―Έμ§€λŠ” Vector 이미지에 μ ν•©ν•˜μ§€ μ•ŠμœΌλ©° Raster κ°€ 더 유리


μ²˜μŒμ—” Vector μ΄λ―Έμ§€μ˜ μ„€λͺ…λ§Œ λ“£κ³ 

그럼 μ™œ κ³ ν™”μ§ˆ μ‚¬μ§„μ—λŠ” Vector 이미지λ₯Ό μ‚¬μš©ν•˜μ§€ μ•Šμ§€ μ‹Άμ—ˆλŠ”λ°

λ‘œκ³ λ‚˜ μ•„μ΄μ½˜μ²˜λŸΌ λ‹¨μˆœν•œ 이미지가 μ•„λ‹ˆλ©΄ κ·Έλ¦¬λŠ”λ° 였래 κ±Έλ €μ„œ 였히렀 μ„±λŠ₯이 μ €ν•˜ λœλ‹€κ³  ν•œλ‹€

μ„œλ‘œ μž₯단점이 λͺ…ν™•ν–ˆλ‹€.

κ·Έλž˜μ„œ 사진은 Raster, μ•„μ΄μ½˜μ€ Vector λ₯Ό 자주 μ“°λŠ”κ΅¬λ‚˜


SVG 에 μ• λ‹ˆλ©”μ΄μ…˜ μ μš©ν•˜λŠ” 방법

방법은 생각보닀 κ°„λ‹¨ν–ˆλ‹€..

1
<circle id="star_4" cx="565" cy="1073" r="9" fill="white" />

svg λŠ” μ΄λŸ°μ‹μœΌλ‘œ ꡬ성 λ˜μ–΄ μžˆλŠ”λ°, ν•΄λ‹Ή νƒœκ·Έλ“€μ˜ id, class λͺ…을 μ£Όμ–΄

일반 css 처럼 μ• λ‹ˆλ©”μ΄μ…˜μ„ μΆ”κ°€ν•΄μ£Όλ©΄ λ˜λŠ” 것 μ΄μ—ˆλ‹€.

1
2
3
4
5
6
7
8
9
10
11
12
13
#planet_1 {
  animation-name: rotation;
  animation-duration: 3s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  transform-box: fill-box;
  transform-origin: center;
}

#number-0 {
  animation: appearFromBottom 3s;
  animation-timing-function: cubic-bezier(0.79, 1.31, 0.82, -0.36);
}

μ—¬κΈ°μ„œ animation-timing-function 에 μ€€

cubic-bezier λž€ 뭘까?

cubic-bezier λž€?

베지어 곑선을 μ •μ˜ν•˜λŠ” ν•¨μˆ˜

νŽ˜μ΄μ§€λ₯Ό μ°Έκ³  ν•˜μž

컴퓨터 κ·Έλž˜ν”½ λ“±μ—μ„œ μ‚¬μš©λ˜λŠ” λ§€κ°œλ³€μˆ˜ 곑선

  • λΆ€λ“œλŸ¬μš΄ 곑선을 λ§Œλ“œλŠ”λ°μ— μ‚¬μš©
  • 피에λ₯΄ 베지에가 1960λ…„λŒ€ 차체 곑선 μ œμž‘μ— μ‚¬μš©
  • 폰트, μ• λ‹ˆλ©”μ΄μ…˜ 등에 자주 μ‚¬μš©



ν›„κΈ°

image-main (λ¦¬μ†ŒμŠ€ 좜처 : 패슀트캠퍼슀)

정말 κ·€μ—¬μš΄ 404 page λ₯Ό λ§Œλ“€μ—ˆλ‹€!

μ—¬νƒœκ» μ• λ‹ˆλ©”μ΄μ…˜μ„ λ§Œλ“€λ €λ©΄ λ””μžμ΄λ„ˆλ“€μ΄ λ§Œλ“€μ–΄μ€˜μ•Ό ν•˜λŠ” 쀄 μ•Œμ•˜λŠ”λ°β€¦

vector 이미지λ₯Ό ν™œμš©ν•˜λ©΄ ν•˜λ‚˜μ˜ μ΄λ―Έμ§€λ‘œ μ• λ‹ˆλ©”μ΄μ…˜μ„ λ§Œλ“€ 수 μžˆλ‹€λŠ” 점에 λŒ€ν•΄

좩격을 λ¨Ήμ—ˆλ‹€β€¦

μ•žμœΌλ‘œλ„ svg λ₯Ό 더 μ• μš©ν•˜λŠ” 계기가 될 것 κ°™λ‹€.

This post is licensed under CC BY 4.0 by the author.