TL;DR
gpu-font는 브라우저에서 텍스트 한 줄과 가장 가까운 글꼴 계열을 찾으며, 글꼴 인식은 실험 단계임.- 이미지 일부를 최대 3개의 회색조 창으로 나누고 작은 신경망이 글꼴별 점수를 매겨 순위를 산출함.
- 모델은
PyTorch와 Google Fonts 글꼴을 사용해 학습했으며,WebGPU또는 CPU에서 실행됨. - 상업용 글꼴은 보유한 글꼴을 직접 색인해야 찾을 수 있고, 글꼴의 굵기와 기울기는 판별하지만 너비는 계열 간에만 비교함.
- 브라우저와 Node.js에서 사용할 수 있으며, 코드는 MIT 라이선스로 제공되고 보증은 없음.
글꼴 매칭
- 텍스트 한 줄에 가장 가까운 글꼴 계열을 브라우저에서 찾는 도구이며, 인식 기능은 실험 단계임.
- 글꼴 선택, 이미지 선택 또는 붙여넣기, 글꼴 샘플 지정, 브러시 크기 설정, 모델 입력 해상도 조정 기능을 제공함.
- 매칭 결과와 카탈로그를 제공하며, 카탈로그 JSON을 열거나 내 글꼴을 색인할 수 있음.
- 감지한 문자 체계를 지원하는 하위 집합이 없는 글꼴은 검색 대상에서 제외됨.
작동 방식
- 입력 영역을 최대 128 × 48픽셀 크기의 회색조 창 최대 3개로 나눔.
- 작은 신경망이 각 창에서 모든 글꼴의 점수를 계산하고, 점수의 평균으로 순위를 정함.
- 모델은
PyTorch에서 Google Fonts 글꼴을Pillow와 Chromium으로 렌더링해 학습함. 저장소에는 재현에 필요한 자료가 모두 포함됨. - 새 글꼴을 추가할 때 재학습은 필요하지 않으며, 해당 글꼴의 스타일 벡터만 있으면 됨. 학습 중 보지 못한 글꼴도 학습에 사용한 글꼴만큼 잘 매칭되지만, 학습 데이터와 스타일이 다른 글꼴은 성능이 낮아짐.
정확도
- 렌더링 문자 테스트는 Google Fonts의 모든 계열에서 5~10자 크롭 이미지를 Chrome으로 그려 사용하며, 모델이 학습하지 않은 텍스트를 Google Fonts에서 검색함.
- 사진 테스트는 벽과 사물에 인쇄되거나 그려진 단어 사진으로 구성된 WhatFontIs-Bench를 사용하며, 모든 카탈로그에서 검색함.
- 요청 테스트는 DaFont 포럼의 “이 글꼴이 무엇인가요?” 게시물 중 포럼이 답변을 확인한 사례를 손으로 잘라 사용하며, 모든 카탈로그에서 검색함.
- 각 테스트의 1위 결과와 상위 5개 결과 정확도 수치는 제공된 본문에 기재되지 않음.
- 속도는
WebGPU와 CPU 항목으로 제시되지만, 측정값은 기재되지 않음.
자주 묻는 질문
- 왜 글꼴을 찾지 못할 수 있나? 모델은 계속 개선 중이며 깨끗하게 렌더링된 텍스트로 학습함. 사진, 흐림, 원근, 윤곽선, 질감, 한두 글자만 있는 입력, 여러 글꼴이 섞인 입력, 서로 닮은 계열은 매칭을 어렵게 함. 카탈로그에 글꼴이 없을 가능성도 있음.
- 굵기, 기울기, 너비를 판별할 수 있나? 굵기와 기울기는 판별하며 각 결과에 가장 가까운 서체 스타일이 표시됨. 너비는 Roboto와 Roboto Condensed처럼 계열 간에만 비교함.
- 상업용 글꼴을 찾을 수 있나? 보유한 상업용 글꼴만 찾을 수 있음. 상업용 글꼴 라이브러리의 이용 약관은 대부분 글꼴 수집을 금지하므로 카탈로그에는 공개 라이선스 글꼴이 포함됨. 상업용 글꼴은 가장 가까운 공개 글꼴 유사체를 찾으며, 글꼴 자체를 찾으려면 개인 소장 글꼴을 색인해야 함.
- 라틴 문자 외에도 작동하나? 가능하지만 신뢰도는 낮음. 현재 상위 5개 결과 측정은 라틴 문자, 키릴 문자, 아랍 문자, 중국어에 대해 제시되지만, 비라틴 문자 계열을 대상으로 한 측정은 아직 적음.
- 손글씨, 아이콘, 글꼴이 아닌 디자인도 지원하나? 아직 지원하지 않음. 실제 손글씨, 레터링, 로고는 대략적인 매칭만 제공하고 아이콘과 기호는 색인되지 않음. 손글씨 글꼴은 다른 글꼴과 같은 방식으로 매칭됨.
- 내 글꼴을 추가할 수 있나? 카탈로그에서 글꼴을 색인한 뒤 카탈로그 메뉴에서 내 글꼴을 선택할 수 있으며, 글꼴은 브라우저에 저장됨.
- 코드에서 사용할 수 있나? 브라우저 또는 Node.js에서 사용할 수 있으며, 패키지 이름은
gpu-font임. README에 API가 안내되어 있음.
대안
- WhatFontIs — 운영사 WhatFontIs Com SRL, 글꼴 1,200,000개 이상, 무료 및 상업용 글꼴과 다수 공급업체, 서버 실행, 하루 5회 무료 및 유료 PRO.
- WhatTheFont — MyFonts 제공, 글꼴 400,000개, 서버 실행, 웹과 앱, 무료.
- Font Finder — 소유자 미기재, 웹·시스템·상업용 글꼴 50,000개, Windows 앱, 서버 실행, 무료.
- Photoshop Match Font — Adobe 제공, Adobe Fonts 글꼴 30,000개, 설치된 글꼴 사용, 라틴 문자와 일본어, 데스크톱 앱, 구독형.
- LensMixfont — Google Fonts 및 기타 공개 글꼴 5,000개, 로컬 Python 또는 호스팅 방식, 굵기와 기울기 판별, 비상업용 무료 및 유료 API.
- What the Google Font — Serbyte Development 제공, Google Fonts 계열 2,000개 이상, 서버 실행, 웹과 Chrome 확장 프로그램, 무제한 무료.
- Matcherator — Font Squirrel 제공, 글꼴 수 미기재, Font Squirrel·Fontspring·MyFonts 글꼴, 서버 실행, 무료.
- gpu-font — 제공 주체 dy, Google Fonts·DaFont 등의 글꼴 사용, 설치 글꼴과 폴더 색인, 굵기와 기울기 판별,
WebGPU또는 CPU에서 브라우저 실행, MIT 라이선스.
라이선스
- 글꼴 파일은 배포물에 포함되지 않음. 미리보기는 각 계열의 라이선스에 따라 Google Fonts에서 불러오거나, 사이트에 저장된 작은 흑백 글꼴 이미지로 제공됨. DaFont 글꼴 이미지는 해당 사이트에서 불러옴.
- 카탈로그에는 이름, 링크, 스타일 번호만 포함됨.
- 매칭 결과는 사용 허가가 아니므로 글꼴을 찾은 뒤 해당 글꼴 제작사의 이용 약관을 확인해야 함. 글꼴 이름은 각 소유자의 상표이며
gpu-font는 이들과 제휴하지 않음. - 코드는 MIT 라이선스이며 보증 없이 제공됨.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요