## πŸ“ 디렉터리 ꡬ성 (Directory Structure) μ•„μ΄μ½˜νŒ©μ„ μ›Ή ν”„λ‘œμ νŠΈμ— 배포할 λ•Œ μ•„λž˜μ™€ 같이 폴더 ꡬ쑰λ₯Ό μœ μ§€ν•©λ‹ˆλ‹€: ```text fluenticons/ β”œβ”€β”€ i/ # SVG μ•„μ΄μ½˜ 원본 파일 λͺ¨μŒ (1.svg ~ 2983.svg) β”œβ”€β”€ fluenticons.min.css # ν”„λ‘œλ•μ…˜ 배포용 μ••μΆ• μŠ€νƒ€μΌμ‹œνŠΈ (81.7 KB) β”œβ”€β”€ fluenticons.css # 개발 및 λ””λ²„κΉ…μš© μŠ€νƒ€μΌμ‹œνŠΈ (99.6 KB) β”œβ”€β”€ index.html # μ‹€μ‹œκ°„ μ•„μ΄μ½˜ 탐색기 (검색, 필터링, 클릭-볡사) β”œβ”€β”€ icons.json # μ•„μ΄μ½˜ 메타데이터 JSON β”œβ”€β”€ icons.data.js # 둜컬 μ‹€ν–‰(file://) μ§€μ›μš© 정적 데이터 └── README.md # μ‚¬μš©μž κ°€μ΄λ“œ λ¬Έμ„œ ``` > ⚠️ **주의**: `fluenticons.min.css`와 `i/` ν΄λ”λŠ” **λ°˜λ“œμ‹œ λ™μΌν•œ 디렉터리 레벨**에 μœ„μΉ˜ν•΄μ•Ό μƒλŒ€ 경둜(`url(i/{id}.svg)`)κ°€ 정상 μž‘λ™ν•©λ‹ˆλ‹€. --- ## πŸ“¦ λΉ λ₯Έ μ‹œμž‘ (Quick Start) ### 1. μŠ€νƒ€μΌμ‹œνŠΈ 뢈러였기 HTML λ¬Έμ„œμ˜ `` νƒœκ·Έ μ•ˆμ— `fluenticons.min.css`λ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€: ```html ``` ### 2. μ•„μ΄μ½˜ μ‚¬μš©ν•˜κΈ° κΈ°λ³Έ 클래슀 `fi`와 ν•¨κ»˜ μ›ν•˜λŠ” μ•„μ΄μ½˜ 클래슀λ₯Ό μ§€μ •ν•©λ‹ˆλ‹€: ```html ``` --- ## 🎨 μŠ€νƒ€μΌ μ»€μŠ€ν„°λ§ˆμ΄μ§• (Styling) CSS Mask 기반으둜 λ™μž‘ν•˜λ―€λ‘œ ν‘œμ€€ ν…μŠ€νŠΈ CSS 속성을 κ·ΈλŒ€λ‘œ μ‚¬μš©ν•˜μ—¬ 크기와 색상을 μ‘°μ ˆν•  수 μžˆμŠ΅λ‹ˆλ‹€: ### 크기 쑰절 (Sizing) κΈ°λ³Έ ν¬κΈ°λŠ” `1em` Γ— `1em`μ΄λ―€λ‘œ λΆ€λͺ¨ 폰트 크기λ₯Ό λ”°λ₯΄κ±°λ‚˜ `font-size`둜 μ‘°μ ˆν•©λ‹ˆλ‹€: ```html ``` ### 색상 쑰절 (Coloring) μ•„μ΄μ½˜μ€ λΆ€λͺ¨ μš”μ†Œμ˜ `color`(`currentColor`)λ₯Ό μƒμ†λ°›μŠ΅λ‹ˆλ‹€: ```html ``` --- ## πŸ” μ£Όμš” μ•„μ΄μ½˜ 및 FontAwesome λ§€ν•‘ν‘œ κΈ°μ‘΄ FontAwesome μ‚¬μš©μžκ°€ μ‰½κ²Œ 적응할 수 μžˆλ„λ‘ 직관적인 별칭을 μ œκ³΅ν•©λ‹ˆλ‹€: | μš©λ„ / 의미 | FluentIcons 클래슀 (μ£Όμš” 별칭) | μ„ ν˜• μ „ν™˜ μ˜ˆμ‹œ | FontAwesome λŒ€μ‘λͺ… | | :--- | :--- | :--- | :--- | | **μΆ”κ°€ / ν”ŒλŸ¬μŠ€** | `fiPlus`, `fiAdd` | `` | `fa-plus` | | **μ›ν˜• μΆ”κ°€** | `fiPlusCircle`, `fiAddCircle` | `` | `fa-plus-circle` | | **μ‚­μ œ / νœ΄μ§€ν†΅** | `fiTrash`, `fiDelete`, `fiDel` | `` | `fa-trash`, `fa-trash-can` | | **μ‚¬μš©μž / ν”„λ‘œν•„** | `fiUser`, `fiPerson` | `` | `fa-user` | | **νŒ€ / κ·Έλ£Ή** | `fiTeam`, `fiPeopleTeam`, `fiGroup` | `` | `fa-users` | | **체크 / 확인** | `fiCheck`, `fiCheckmark` | `` | `fa-check` | | **μ›ν˜• 체크** | `fiCircleCheck`, `fiCheckCircle` | `` | `fa-check-circle` | | **λ‹«κΈ° / μ·¨μ†Œ** | `fiClose`, `fiTimes`, `fiDismiss`, `fiXmark`| `` | `fa-times`, `fa-xmark` | | **μ›ν˜• λ‹«κΈ°** | `fiCircleXmark`, `fiDismissCircle` | `` | `fa-times-circle` | | **μ—…λ‘œλ“œ** | `fiUpload`, `fiArrUpload` | `` | `fa-upload` | | **λ‹€μš΄λ‘œλ“œ** | `fiDownload`, `fiArrDownload` | `` | `fa-download` | | **ν΄λΌμš°λ“œ μ—…λ‘œλ“œ** | `fiCloudUpload`, `fiCloudArrUp` | `` | `fa-cloud-upload-alt` | | **달λ ₯** | `fiCalendar`, `fiCal`, `fiCalToday` | `` | `fa-calendar` | | **νƒœμ–‘ / 라이트** | `fiSun`, `fiWeatherSunny` | `` | `fa-sun` | | **달 / 닀크** | `fiMoon`, `fiWeatherMoon` | `` | `fa-moon` | | **λ¬Έμ„œ / 파일** | `fiDoc`, `fiFile`, `fiFileLines` | `` | `fa-file`, `fa-file-alt` | | **클립 / 첨뢀** | `fiClip`, `fiAttach`, `fiPaperclip` | `` | `fa-paperclip` | | **μ•Œλ¦Ό / 벨** | `fiBell`, `fiAlert` | `` | `fa-bell` | | **μˆ˜μ • / 펜** | `fiPen`, `fiPencil`, `fiEdit` | `` | `fa-pen`, `fa-edit` | | **볡사** | `fiCopy`, `fiClone` | `` | `fa-copy`, `fa-clone` | | **λΆ™μ—¬λ„£κΈ°** | `fiPaste`, `fiClipPaste` | `` | `fa-paste` | | **ν™ˆ / μ§‘** | `fiHome`, `fiHouse` | `` | `fa-home`, `fa-house` | | **μƒˆλ‘œκ³ μΉ¨ / 동기화**| `fiSync`, `fiRefresh`, `fiArrowsRotate`| `` | `fa-sync`, `fa-rotate` | | **ν™”μ‚΄ν‘œ(쒌/우/상/ν•˜)**| `fiArrLeft`, `fiArrRight`, `fiArrUp`, `fiArrDown` | `` | `fa-arrow-left` λ“± | | **κΊΎμ‡ (Chevron)** | `fiChevronLeft`, `fiChevronRight`, `fiChevronUp`, `fiChevronDown` | `` | `fa-chevron-down` λ“± | | **검색** | `fiSearch`, `fiDocSearch` | `` | `fa-search` | | **μ™€μ΄νŒŒμ΄** | `fiWifi`, `fiWifi4` | `` | `fa-wifi` | | **ν•˜νŠΈ / μ’‹μ•„μš”** | `fiHeart` | `` | `fa-heart` | | **별 / 즐겨찾기** | `fiStar` | `` | `fa-star` | | **둜그인 / μ§„μž…** | `fiLogin`, `fiSignIn`, `fiSignInAlt` | `` | `fa-sign-in-alt` | --- ## πŸ’» μΈν„°λž™ν‹°λΈŒ μ•„μ΄μ½˜ 탐색기 (`index.html`) μ•„μ΄μ½˜ 팩 λ£¨νŠΈμ— ν¬ν•¨λœ `index.html` νŒŒμΌμ„ μ›Ή λΈŒλΌμš°μ €λ‘œ μ—΄λ©΄ νŽΈλ¦¬ν•œ μ „μš© 탐색기가 μ œκ³΅λ©λ‹ˆλ‹€: - **μ‹€μ‹œκ°„ 검색**: μΉ΄λ©œμΌ€μ΄μŠ€λͺ…, FontAwesome 별칭, 영문 ν‚€μ›Œλ“œλ‘œ μ¦‰μ‹œ 검색 - **원클릭 볡사**: μ•„μ΄μ½˜ μΉ΄λ“œλ₯Ό ν΄λ¦­ν•˜λ©΄ μ¦‰μ‹œ `` HTML μ½”λ“œκ°€ ν΄λ¦½λ³΄λ“œμ— 볡사 - **μŠ€νƒ€μΌ ν† κΈ€**: 상단 λ²„νŠΌμ„ 톡해 전체 μ•„μ΄μ½˜μ˜ "μ±„μ›€ν˜•(κΈ°λ³Έ)"κ³Ό "μ†”λ¦¬λ“œν˜•(solid)" λͺ¨λ“œλ₯Ό ν•œλˆˆμ— 비ꡐ - **크기 및 ν…Œλ§ˆ 쑰절**: 16pxλΆ€ν„° 48pxκΉŒμ§€ μ‹€μ‹œκ°„ 크기 λ³€κ²½ 및 라이트/닀크 ν…Œλ§ˆ μ „ν™˜ 지원 --- ## βš™οΈ λ™μž‘ 원리 (Technical Mechanism) 이 μ•„μ΄μ½˜νŒ©μ€ CSS 마슀크 속성과 CSS λ³€μˆ˜λ₯Ό κ²°ν•©ν•œ μ΄ˆκ²½λŸ‰ 섀계λ₯Ό μ μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€: ```css /* 곡톡 마슀크 베이슀 */ .fi { display: inline-block; width: 1em; height: 1em; vertical-align: -0.125em; background-color: currentColor; -webkit-mask: var(--i) no-repeat 50% 50% / 100% 100%; mask: var(--i) no-repeat 50% 50% / 100% 100%; flex-shrink: 0; --i: var(--f, var(--r)); /* κΈ°λ³Έκ°’: 채움(Fill) ν˜• */ } /* μ†”λ¦¬λ“œ λͺ¨λ“œ μ „ν™˜ */ .fi.solid, .fi.fiSolid { --i: var(--r, var(--f)); /* μ„ ν˜•(Regular) μ•„μ΄μ½˜μœΌλ‘œ λŒ€μ²΄ */ } /* κ°œλ³„ μ•„μ΄μ½˜ μ •μ˜ (단 1μ€„λ‘œ Fillκ³Ό Solidλ₯Ό λͺ¨λ‘ 지원) */ .fiAdd, .fiPlus { --f: url(i/8.svg); --r: url(i/7.svg); } ``` - μ€‘λ³΅λœ CSS μ…€λ ‰ν„° 선언을 100% λ°°μ œν•˜μ—¬ CSS 파일 크기λ₯Ό ν˜μ‹ μ μœΌλ‘œ μ••μΆ•ν–ˆμŠ΅λ‹ˆλ‹€. - 배경색은 `currentColor`둜 μ§€μ •λ˜λ―€λ‘œ ν…μŠ€νŠΈ 색상(`color`) 속성을 μ™„λ²½ν•˜κ²Œ μƒμ†ν•©λ‹ˆλ‹€. --- ## πŸ“„ λΌμ΄μ„ μŠ€ (License) - 원본 μ•„μ΄μ½˜ λ””μžμΈ: [Microsoft Fluent System Icons](https://github.com/microsoft/fluentui-system-icons) (MIT License) - μ•„μ΄μ½˜νŒ© μ΅œμ ν™” 및 μΉ΄λ©œμΌ€μ΄μŠ€ λ§€ν•‘: **BitPlus Platform** (MIT License)