๐ฅ UI ๋์์ธ ๊ฐ์ด๋ ๋ง๋ค๊ธฐ #3._Icon svgํ
Posting : 08.22.2022
Designer : ๊น์ธ์
#designsystem #UX/UI #Icon #svg
์์ด์ฝ svg ์ด์ฉ๊ธฐ
์์ด์ฝ์ svgํ ํ๋ฉด์ ๊ฒช์ ์ฐ์ฌ๊ณก์
์์ด์ฝ์ svg ๋ก ์ด์ฉํ๊ณ , ๊ฐ๋ฐ์์ ํจ๊ป ์์ด์ฝ ์์คํ ์ ์ ์ฉํ๋ฉด์ ํฌ๊ฒ ๋ค์ด๋ฐ๊ณผ ์ปดํฌ๋ํธ ์นดํ ๊ณ ๋ฆฌ๊ฐ ํฌ๊ฒ ๋ฐ๋๊ฒ ๋์๋ค. ๊ทธ๋ฌ๋ฉด์ Property๊ฐ ์ค ์์ฐ์ค๋ฝ๊ฒ ์์ ๊ณผ ์ญ์ ๋๋ ๊ฒ๋ค์ด ์์๋ค.
svg ๋ฅผ ์ด์ฉํ๊ฒ ๋๋ฉด์ ๊ฐ์ฅ ํฌ๊ฒ ๋ฐ๋ ๊ฒ๋ค์ ์๋์ ๊ฐ๋ค.
01. ๋งจ ์ฒ์ ๋ฐ๋ ๊ฒ : ๋ค์ด๋ฐ, Property
ํ์์ ์์ด์ฝ ๋ค์ด๋ฐ ์์คํ ์ ํผ๊ทธ๋ง์์ ์์ด์ฝ ์ปดํฌ๋ํธ๋ฅผ ๋ค๋ฃจ๋ ๋ฐฉ์๊ณผ ๋์ผํ๊ฒ ๊ฐ์ ธ๊ฐ๋ค. ๊ทธ๋ ๊ธฐ์ ์์ด์ฝ์ Property ๊ฐ ๋ค์ด๋ฐ์ ๋ฐ์์ด ๋์ด ๋ณ๊ฒฝ๋ ๊ฒ์ด๋ผ๊ณ ๋ณด๋ฉด ๋๋ค.
AS-IS
TO-BE
direction-property โ shape ์์
๊ธฐ์กด suffix ๋ถ๋ถ์ ๋ณด๊ฒ ๋๋ฉด direction-property ์ status, color ๊ฐ ์กด์ฌํ๋ค. ์๋์ To-be ์ ๋น๊ต๋ฅผ ํด๋ณด๋ฉด direction-property๋ shape ์ผ๋ก ์๋ฉ์ ๋ณ๊ฒฝํ๋ค. ์ด์ ๋ ํํ๊ฐ ๋ฐ๋๊ฒ ๋ ์ด์ ์ ์ฐ๊ฒฐ์ด ๋๊ธฐ๋ ํ๋ค. ์์ด์ฝ์๋ fill ๊ฐ์ผ๋ก ์ฑ์์ง ํํ๊ฐ ์๊ณ , stroke ํํ๋ก ์ด๋ฃจ์ด์ง ๊ฒ ์๋ค. ์ด๋ ํญ์ด๋ ๋ฉ๋ด๋ฅผ ํด๋ฆญํ ์, ํด๋ฆญ์ interaction์ ๋ฐ๋ผ ์ฌ์ฉ๋๋ ๋ค๋ฅธ ํํ์ด๋ค. ๊ธฐ์กด์ ์๋ฉ์ ์ด๋ฐ ํํ๊น์ง ๋ค ํฌ๊ดํ๊ธฐ์๋ ์ ๋งคํ๋ค. ๊ทธ๋์ ๋จ์ํ arrow์ ๋ฐฉํฅ ๋ฟ ์๋๋ผ ๋ค์ํ ์์ด์ฝ์ ํํ๋ฅผ ์์ฐ๋ฅผ ์ ์๋ shape ์ผ๋ก ์ด๋ฆ์ ๋ณ๊ฒฝํ๋ค.
Property ๊ฐ ์ค color๊ฐ, status ๊ฐ ์ญ์
svgํ์ฅ์๋ฅผ ์ด์ฉํ๊ฒ ๋๋ฉด์, ๊ฐ๋ฐ์๊ฐ ์ง์ ์ฝ๋ ์์์ currentcolor ๊ฐ์์ ์ง์ ์์์ ๋ณ๊ฒฝํ ์ ์๊ธฐ ๋๋ฌธ์ ๊ตณ์ด ์ปฌ๋ฌ variants ๋ค์ ๋ง๋ค ํ์๊ฐ ์์ด์ก๋ค.
Status ๊ฐ ์ญ์ ์ ๋ถ๋ถ์ ์๋ ํํ ๋ถ๋ฆฌ์์ ์ค๋ช ํ๊ฒ ๋ค.
02. ํํ ๋ณ๊ฒฝ (Icon๊ณผ Butcon, Controller์ผ๋ก ๋ถ๋ฆฌ)
ํํ ๋ณ๊ฒฝ
์์ด์ฝ์์ ๊ธฐ์กด์ background๊ฐ ์กด์ฌํ๋ ํํ๊ฐ ์์๋ค. ์ด๋ ์ปดํฌ๋ํธ ์์์ ์ฌ์ฉ๋์ด ๋ฒํผ์ฒ๋ผ ์ฐ์ด๊ณ , status ๊ฐ์ด interaction์ ๋ฐ๋ผ ๋ณํ๋๋ ์์ด์๋ค. ๊ทธ๋ฌ๋ค๋ณด๋ ํฌํจ๋์ด์๋ ์ปดํฌ๋ํธ์์์ status ๊ฐ๋ง๋ค ๊ณ์ํด์ ์ถ๊ฐํด์ค์ผ ํ๋ค.
Butcon ๋ถ๋ฅ
์๋์ผ๋ก ์ํ๊ฐ์ด ๋ค์ด๊ฐ๊ฒ๋๋ ๋ฒํผ๋ค์ ๋ฐ๋ก Butcon์ผ๋ก ๋ถ๋ฅํ์๋ค.
Controller ๋ถ๋ฆฌ
์๋ฆฌ์ on/off ์ ์ฒดํฌ ๋ชจ๋ ๋ช ํํ ๊ตฌ๋ถ์ด ์์ด์ controller ๋ก ๋ฐ๋ก ๊ตฌ๋ถ์ง์ง ์๊ณ Icon ๋ด์์ ์ฃผ๋จน๊ตฌ๊ตฌ ์์ผ๋ก ๊ด๋ฆฌ๋ฅผ ํ์๋ค. ์ด๋ฒ์ ๋ถ๋ฆฌ๋ฅผ ํ๋ฉด์ on/off ๊ฐ ๋ช ํํ ๊ฒ๋ค์ controller๋ก ๊ตฌ๋ถ์ง์๋ค.
๊ฐ๋ฐ์์๊ฒ ๋ณด๋ผ ๋ ์ ์ํ ์
svg์์ด์ฝ์ ๋ ์ด์ด ์์ถ์ด ์๋ ์ฝ๋๋ก ์์ด์ฝ์ ์๊ฐ์ ์ธ ์ ๋ณด๋ฅผ ํํํ๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ๋ณต์กํ๋ฉฐ ๋ณต์กํ ์๋ก ์์ด์ฝ์ด ๊นจ์ง๊ฑฐ๋ ์์ ๋ณ๊ฒฝ์ด ๋์ง ์๊ฑฐ๋ ํ ์ ์๋ค. ๊ทธ๋์ ์ต๋ํ stroke๋ฅผ outline strokeํ์ flatten์ฒ๋ฆฌ ํ์ฌ ๊นจ์ง ์ผ๋ ค๊ฐ ์๋๋ก ํ๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๋ ๊ฒ ํ๋ฉด ๊ฐ๋ฐ์๊ฐ fill ์ด๋ผ๋ ์์ฑ์์ ํ ๋ฒ์ ์์์ ๋ณ๊ฒฝํ ์ ์์ด ์ข๋ค.
ํ์๋ ๋์์ด๋ ๊ด๋ฆฌ์ฉ page ์ ๊ฐ๋ฐ์ export ์ฉ ํ์ด์ง๋ฅผ figma๋ด์์ ๋ฐ๋ก ๋ถ๋ฆฌํ๋ค. ๊ทธ๋์ ๋์์ด๋๋ค๋ ์์ด์ฝ ์์ ๊ด๋ฆฌ๋ฅผ ํ ์ ์๊ณ , ๊ฐ๋ฐ์๋ ๊ด๋ฆฌํ๊ธฐ ์ฝ๋๋ก ํ์๋ค.
[๋์์ด๋ ๊ด๋ฆฌ์ฉ]
[๊ฐ๋ฐ์์ export์ฉ]
์์ฌ์ ๋ ์
์์ด์ฝ์ด ์ ์ด์ ์์ ์ฌ์ด์ฆ์์ ์์ ์์ฌ์ ์ฌ์ด์ฆ์ ๋ค ๋์ํ ์ ์๋๋ก ์ฌ์ธํ๊ฒ ๋ง๋ค์ด์ง์ง ๋ชปํด์ ์ฌ์ด์ฆ๋ณ๋ก ๋ฐ๋ก ์์ด์ฝ๋ค์ ๊ด๋ฆฌํด์ผ๋๋ค๋ ์ ์ด ์์ฌ์ ๋ค. ์ด๋ ๊ฒ ๋ ๊ฒฝ์ฐ ๊ด๋ฆฌํด์ผ๋ ๋ฆฌ์์ค์ ๋ฉ๋ชจ๋ฆฌ๊ฐ ๋ง์ด ๋ค์ด๊ฐ๊ธฐ ๋๋ฌธ์ด๋ค.๋ค์์ ์์ด์ฝ์ ์ ๋ฐ์ ์ผ๋ก ํ๋ก๋ํธ์ ๋ธ๋๋ ์ผ๊ด์ฑ์ ๋ง๋๋ก ์ผ๊ด์ ์ผ๋ก ์์ ํด๋ด์ผ๊ฒ ๋ค. ๊ทธ๋ ๊ฒ ๋ ๊ฒฝ์ฐ, ์์ด์ฝ์ ๋ค์ด๋ฐ Property ๊ฐ ๋์ฑ ๋ช ํํด์ง ์ ์๊ณ , ๊ด๋ฆฌํด์ผ๋ ๋ฆฌ์์ค๋ ์ ์ด์ง ์ ์์ ๊ฒ ๊ฐ๋ค.
์ฐธ๊ณ ์๋ฃ