orioncactus / pretendard Goto Github PK
View Code? Open in Web Editor NEW어느 플랫폼에서든 사용할 수 있는 system-ui 대체 글꼴 | A system-ui alternative font for all cross-platform
Home Page: https://cactus.tistory.com/306
License: Other
어느 플랫폼에서든 사용할 수 있는 system-ui 대체 글꼴 | A system-ui alternative font for all cross-platform
Home Page: https://cactus.tistory.com/306
License: Other
And thank you for making the Std (Latin/Greek/Cyrillic-only) version!
안녕하세요?
좋은 폰트를 오픈소스로 공유하여 감사드립니다.
모든 글자의 크기(너비)가 같은 Monospaced 형식의 폰트는 계획에 없으실까요?
감사합니다.
jsDelivr에 깃허브를 통해 배포되면 아직 릴리즈 되지 않았지만 바로 배포되버리는 안정성 확보 문제가 있습니다.
Pretendard는 npm과 yarn으로도 배포되니 jsDelivr에서 npm을 통해, 릴리즈 된 경우 배포되는 방식으로 배포하거나
cdnjs과 같이 jsDelivr보다 속도와 캐싱 등 다른 문제가 적은(다시 말해 #35 등의 문제가 적은) 플렛폼으로 배포하는 것이 어떤지 여쭙고 싶습니다.
참고로, cdnjs는 npm이 배포되있으면 별다른 큰 작업 없이 업로드 작업이 가능하며, 이는 제가 기여가 가능합니다.
#2 와 동일한 목적에서 시작되었습니다.
웹폰트 목적으로 사용하기 조금 무거운 Pretendard를 작은 서브셋들로 잘라 웹폰트로 구성합니다.
Google은 오픈 소스 한글 폰트를 머신 러닝에 기반한 최적화 기술로 여러 서브셋을 나누어 제공합니다.
Google에서 제공하는 Noto Sans KR 폰트의 서브셋들을 토대로 작업합니다.
#84 에서 제보됨
멋지고 완성도 높은 폰트를 만들어주셔서 감사합니다.
Variable fonts(가변 폰트)는 만들어본적이 없어서 알아봐야 할 수 있겠지만,
글꼴 빌드, 일반적인 글꼴 변환과 서브셋은 도움을 드릴 수 있을 듯 합니다.
글꼴 빌드는 해본적 없지만
fontmake를 참고하면 해볼 수 있을듯 합니다.
일반적인 서브셋의 경우, abc...가나다
같은 목록만 있으면 손쉽게 만들어낼 수 있습니다.
다이나믹 서브셋은 종류가 많다보니 각 목록 리스트를 짜는건 쉽지 않습니다.
그래서 구글 폰트처럼 서브셋을 생성할수 있는 라이브러리를 만든적이 있는데 Pretendard의 경우, 어떻게 빌드하시는지는 정확히 모르겠습니다.
제가 생각하는 자동화를 하는 방식은
다른 폰트들은 다 괜찮은데 이상하게 이 폰트만 사용하면 렌더링 시간도 길어지고 자원을 많이 잡아 먹는 것 같습니다.
5950x에 3080이라 텍스트 몇개 올리는거 가지고는 왠만해서 렉이 걸리지 않는데 작업을 도무지 더 이상 못할정도로 렉이 걸리니 미치겠네요 ㅠㅠ
좋은 폰트 만들어주셔서 감사합니다.
사용하는 프로젝트에 Pretendard 폰트를 적용해보려 하였지만 단독판매 금지조항과 충돌하여 SIL 라이센스는 GPL(+AGPL)과는 호환이 안 된다고 합니다. 하지만 번들 또는 내장하는 경우에는 허용이 된다는 말도 있는데요, AGPL 라이센스를 사용하는 소프트웨어에서 Pretendard를 번들로 묶어도 되는 것인지 명확하게 알고 싶습니다.
pretendard-Bold.woff 등 폰트를 사용하다, 홈페이지에 있는 일본어 버전 폰트 다운받아 pretendardJP-Bold.woff로 폰트 변경하였는데,
대체 폰트로 대체됩니다. woff2로 수정 후, 적용해도 똑같네요.
woff파일을 다운받아 소스에 직접 넣는것 말고 추가로 해야하는것이 있을까요?
font-family: 'Pretendard JP', Meiryo ...
font-face {
font-family: 'Pretendard JP';
font-weight: 700;
src: (생략)/static/fonts/PretendardJP-Bold.woff')}') format('woff');
}
.
현재 Pretendard의 폰트 파일이 13,777자에 달해 웹폰트 등의 목적으로 사용하기에 조금 무거울 수 있습니다.
이에 KS X 1001 표준 2,350자 + ɑ 만을 추출한 서브셋 폰트를 제공합니다.
기존 Pretendard 폰트에서 추출한 글자만을 가져와 코드 레벨에서 생성합니다.
css에서 같은 300, 400, 500 등의 weight를 비교하는데 일반 "Pretendard" 글꼴이 가변글꼴 버젼("Pretendard Variable")보다 한 단계 높은 weight정도의 두께를 갖네요.
이 것이 의도하신 두께 조절이 맞나요?
개인적으로 다른 여러 글꼴들, 특히 Apple SD Gothic Neo 와 비교했을 때, 가변글꼴 두께가 딱 맞고
일반 Pretendard 글꼴은 weight에 비해 너무 두꺼워서, 가변글꼴 두께정도로 일반글꼴 두께가 맞춰졌으면 합니다.
안그래도 개인적으로도 Noto Sans KR과 Inter 글꼴을 좋아해서 같이 사용하면서, 사이즈 조정이 아쉬웠는데 이런 글꼴작업에 너무 감사합니다.
Safari에서 다이나믹 서브셋으로 제공하는 Pretendard를 사용할 때 nbspace(
)가 의도대로 나오지 않습니다.
다이나믹 서브셋 css에서 unicode-range를 수정해 해결합니다.
jsdelivr에서 제공하는 릴리즈 태그 규칙과 맞지 않아 최신 버전으로 웹폰트 서브가 안 됨. (jsdelivr/jsdelivr#18334)
릴리즈 태그를 v0.0.0과 같은 형태로 업데이트 필요
이슈 해결을 위해 문제를 확인해주신 @hiddenest님께 진심으로 감사드립니다!
Pretendard, Pretendard JP를 동시에 설치 한 뒤,
시스템 기본 폰트를 Pretendard로 설정 시 뜻을 알 수 없는 일본어로 글자가 깨지는 현상이 발생합니다.
제 생각에 해당 폰트의 폰트가족이 모두 동일하게 Pretendard 인것 같습니다.
Pretendard JP로 폰트가족을 바꿔주셔야 할 것 같습니다.
안녕하세요! 제작해주신 폰트 감사히 사용하고 있습니다.
다만 본고딕의 한글 크기가 커서 조정을 하셨음에도 불구하고 아직도 라틴 문자보다 한글이 커 보이는 경향이 있는 것 같아서 요청드립니다.
이게 Apple 홈페이지에 텍스트를 수정해 캡처한 이미지고 (제가 Mac이 없어서)
보시다시피 Apple의 것과 비교해서 한글의 높이가 라틴 문자보다 살짝 더 큰 게 눈에 띄는데 한글의 크기를 조금만 더 줄여주시면 좋지 않을까 생각합니다.
GIF 이미지입니다. 배경색이 짙은 것이 Apple입니다. 둘 다 크기 720px, 굵기 400입니다.
감사합니다!
E413 - 413 Payload Too Large
이슈로 현재 npm에 업로드가 불가능합니다. 따라서 npm으로부터 영향을 받는 cdnjs, unpkg가 1.3.0으로 업데이트되지 않습니다.
--max_old_space_size=10336
와 같은 명령어 추가import 'pretendard'
와 같이 npm으로 pretendard를 설치하더라도 특정 에셋만 빌드할 수 있게 관리 가능import
로 에셋을 관리하더라도 pretendard 패키지를 설치할 때 JP와 Std를 포함한 모든 에셋을 추가하게 됨pretendard
와 pretendard-jp
, 그리고 pretendard-std
와 같이 패키지를 나눠 쓸 수 있게 하면 어떨지?JSDelivr의 캐시 정책으로 인해, Pretendard가 릴리즈 될 때 웹폰트가 바로 변경되지 않습니다.
이에 릴리즈 시에 JSDelivr의 캐시를 초기화(Purge)하는 스크립트를 GitHub Workflow에 추가합니다.
curl
로 JSDelivr에 Purge를 위한 GET
요청을 보냅니다.Spoqa Han Sans에서 Pretendard로 Migration 할 때,
기존에 Spoqa Han Sans에서 지원하던 PUA 공간 특수 글리프가 Pretendard에는 없어서, = 모양의 이상한 글자가 노출됩니다.
혹시 해당 PUA 글리프를 Pretendard에 추가해 주실 계획이 있으신가요?
Pretendard Variable 다이나믹 서브셋에 대한 리드미 내용이 없습니다.
아마 누락된거 같은데, 추가 해 주실 수 있으실까요?
https://pretendard.appie.dev/ CDN에서 Pretendard 웹 폰트를 배포 중인것을 한 홈페이지에서 발견했습니다.
해당 CDN이 정식적으로 본 레포에서 관리되고 있는것이며, 최신 버전인 1.3.0이 맞는지 확인이 가능하실까요?
안녕하세요! 먼저 좋은 폰트를 만들어주셔서 감사합니다.
현재 Pretendard는 Google Fonts에 등재되어있지 않습니다. 하지만 조건을 만족하는 모든 폰트는 이곳에 등재될 수 있습니다. 만약 Pretendard가 이곳에 업로드 된다면 좀 더 편리하게 사용할 수 있고, 홍보에도 도움이 될 것 같습니다.
안녕하세요! 감사히 사용하던 중에 또 궁금한 점이 생겨 요청드립니다.
제가 Pretendard를 본고딕 JP와 섞어쓰고 있는데 font-feature-settings: 'ss05'를 적용해도 일본어 문장에서 가운뎃점이 기존처럼 아래쪽에 출력되더라고요.
제가 오픈타입 기능에 대해선 잘 모르지만 '한글에 맞춘 가운뎃점'이라고 되어 있었으니 한글 문장에만 적용되는 것인가 싶었는데요, 그게 맞다면 이걸 일본어나 중국어 문장에도 적용되게 해주셨으면 좋겠습니다.
감사합니다!!
안녕하세요! 반각 가타카나랑 세로쓰기도 지원했으면 해서 이슈 남겨봅니다.
U+FF61
부터 U+FF9F
까지가 빠져 있는데 들어가면 좋을 것 같아요. 근데 이게 예전 M PLUS 1p에는 있는데 프로젝트를 GitHub로 옮긴 뒤의 새로운 M PLUS 1에는 포함되어 있지 않더라고요..
세로쓰기 환경에서 괄호가 가로쓰기에서처럼 나오고 っ, ッ, ぁ, ヶ 같은 스테가나가 우측 세로 중앙에 있어야 하는데 가로쓰기에서처럼 중앙 하단에 위치합니다.
검색해보니 OpenType 테이블의 GSUB인지 GPOS인지 vert
기능에 관련된 것 같은데 잘 모르겠네요..
오픈소스 프로젝트의 신뢰도를 높이고 참여감을 높이기 위해 사용하고 있는 회사를 리스팅하는 경우가 많습니다. 사용중인 회사의 멤버들이 비교적 가볍게 로고를 올리는 정도로 Pretendard에 기여할 수 있는 기회를 만들어 주기도 하고요. Pretendard도 사용중인 회사 목록을 리스팅해보면 어떨까요?
아래는 예시입니다.
안녕하세요!
플러터 프로젝트에 이 글꼴을 사용하고 싶은데, 폰트 적용이 제대로 되지 않아 이슈 올립니다.
.ttf, .otf 모두 해봤고 다른 웹폰트 등록하는 방식과 똑같이 했는데 다른 폰트만 제대로 뜨고 pretendard만 적용이 안되는 것 같습니다.
한번 확인해주실 수 있나요?
플러터는 2.2.3 버전을 사용하고 있습니다.
안녕하세요. 아래의 Google Font 등록은 잘보았습니다.
저 또한 brew ( 패키지 관리자 ) 의 font 패키지 등록 원하는데,
혹시 제가 그것을 진행을 해봐도 될런지요?
npm 패키지로 릴리즈하면, npm install pretendard
명령으로 프론트엔드 개발에 사용 가능합니다.
좋은 폰트 제작에 감사드립니다.
Note: Keeping your copyright notes, and adding my ones, of course.
https://learn.microsoft.com/en-us/typography/opentype/spec/dvaraxisreg
위 링크에 따르면 다른 태그들도 있는데
현제 Flutter 에서 사용해보려 하니까 wght(weight)를 제외한 나머지 태그들이
동작하지 않는거 같습니다.
⚠️ Experimental
구현 및 실제 환경에 적용 가능한지 테스트를 하고 있습니다.
해당 내용이 불가능하다고 판단될 경우 Issue를 닫을 수 있습니다.
#4 의 연장선상에서 진행하는 작업입니다.
가변 폰트(Variable Font)도 다이나믹 서브셋을 적용하여 최신 웹 환경에서 더 적은 용량으로 폰트를 불러와 사용할 수 있도록 합니다.
Google의 경우, weight를 선택하면 주소 파라미터에 @wght
값이 붙으며, 입력한 값 각각에 대해 font-weight
의 CSS가 생성됩니다.
이때 불러오는 파일의 경로는 모두 동일합니다. 구현 방법을 차용하여 구현할 수 있는지를 실험해보려고 합니다.
subset-utils
에서 kinds가 "dynamic"
일 때, variable
여부를 받을 수 있도록 합니다.variable
여부에 따라 INPUT_PATH, DIST_PATH, CSS 파일명을 수정합니다.dist/web/variable
내에 템플릿 CSS를 추가합니다.Hi,
I noticed that pretendard-jp
works with traditional Chinese characters but not simplified ones. It would be very useful to have a version of Pretendard that works for simplified Chinese, is this possible?
Thanks!
눈누 웹폰트에 올라온 Pretendard는,
먼저 웹폰트 번들이나 다이나믹 웹폰트 형태가 아닌 직접 다운로드 하여 호스팅하는 방식으로
제공되고 있어 눈누를 사용하는 경우 직접 css 작업을 해야하는 점이 있으며,
또한 폰트가족도 각 굵기마다 다르게 업로드 되어있어 굵은 글씨의 경우 수동으로 Pretendard-Bold로 지정해야합니다.
이런 불편함을 줄이기 위해 눈누에 문의하여 공식으로 배포되는 다이나믹 웹폰트를 업로드하고, 폰트가족을 하나로 합쳐 사용자의 불편함을 줄였으면 합니다.
실제로 본고딕도 이런 절차로 구글폰트에서 제공하는 다이나믹 웹폰트로 교체된 바 있습니다.
안녕하세요. 프리덴다드 체 잘 사용중입니다. 감사합니다.
[질문]
1.컴퓨터 fonts 폴더에 설치할 수 있는 설치파일은 별도로 없는 것일까요?
src: local('Pretendard Black')
요걸 적용하려면 개인 컴퓨터에 설치가 되어야 하는데 말이죠.
개인 컴퓨터에 설치를 어떤식으로 하면 될까요?
2.다이나믹 서브셋 CDN 제공해주신 코드를 보면
src: local('Pretendard Black')
와 같이 사용자 개인 컴퓨터에 설치되어있다면 그 폰트를 적용! 이라는 코드가 없는데요.
=>
다이나믹 서브셋 CDN 은 local 은 따로 지원은 안해주시고
무조건 인터넷 연결이 된 환경에서 CDN 설치방식으로밖에 안될까요?
3.다이나믹 서브셋을 CDN 으로 하는게 아니라
회사 서버에 올리려면 어떤 방식으로 해야할까요???
=>
[Pretendard-1.1.1\web\static\woff2-subset]
폴더 들어가보면 "Pretendard-Black.subset.woff2" 형식으로만 되어있는데요~
이게 이렇게가 아니라
woff2-dynamic-subset/Pretendard-Thin.subset.0.woff2
woff2-dynamic-subset/Pretendard-Thin.subset.1.woff2
woff2-dynamic-subset/Pretendard-Thin.subset.2.woff2
woff2-dynamic-subset/Pretendard-Thin.subset.3.woff2
woff2-dynamic-subset/Pretendard-Thin.subset.4.woff2
....
이런식으로 woff2 파일들이 다 분리되어있어야 하지 않나요?
4.내부 프로젝트에 "다이나믹 서브셋 - HTML" 방식으로 폰트 적용을 하려고 하였는데요.
이게 보안 상 내부망에서는 인터넷 연결이 한정적으로 되어있어서
CDN 으로는 적용이 안되더라고요.
=>
방법 A :
CDN 방식으로 넣고,
내부망 컴퓨터에 폰트파일을 설치한다.
어차피 "src: local('Pretendard Black')" 로 폰트가 내부컴퓨터에 설치되어있다면 적용 될것 같다.
(단, @font-face 에 "src: local('Pretendard Black')" 이 적용되어있어야하는데, 다이나믹 서브셋에는 없다....)
방법 B :
프리텐다드 폰트를 제가 다운받아서
회사 서버에 폰트파일 올리는 식으로 하면 될것 같은데요.
요것도.... 4번 질문이랑 연결되는데, 다이나믹 서브셋을 어떤방식으로 올릴지 의문입니다.
방법 C :
기타 더 좋은 방법 있으면 추천 부탁드립니다.
감사합니다.
안녕하세요, 저희 서비스에서 Pretendard 를 사용하고 있습니다. (점진적 도입중)
https://festa.io
혹시 사용중인 회사에 등록 가능한지 물어보고 싶어 이슈 남깁니다.
로고 같이 남깁니다.
감사합니다.
겹낫표 '『』'가 한글에서 쓰기에 좀 이상해 보이네요. 문법대로면 세로쓰기에서 큰따옴표 대신 쓰는건데 한글에 그렇게 조화로운지는 의문이 있긴 합니다. 전체적으로 폰트가 마음에 들어서 애용하고 있습니다만... 이따금 겹낫표에서 흠칫하게 되네요. ;;
일본에선 가로쓰기에도 그냥 사용하고 그걸 한국에서 번역하거나 했을 때 그대로 쓰이기도 하는 등 빈도는 적어도 그럭저럭 볼 수 있습니다.
그럴때마다 아쉽게 보이는 디자인입니다. 영어에 맞춘 디자인이라면 한글이나 한자에 맞춘 조화로운 디자인이 될 수 있었으면 좋겠습니다. 그냥 제 눈에만 이상한거면 뭐 어쩔수 없지만요.
사용하신 소스인 Noto Sans CJK KR에서는 표현해 주는 한자들을 표현하지 않고 있습니다.
정자는 표기하지만 약자, 간자 표기는 전혀 표기되지 않는것 같습니다. 프리텐다드 JP에선 약자 표기가 표현되던데...
https://korean.go.kr/nkview/nklife/1989_2/17_3.html 간체는 중국에서만 쓰는거라 볼 수 있지만 약자는 사실 조선의 고서에서도 속자로 두루 사용됐기에 사실상 한글 폰트에 포함돼야 하지 않나 싶네요. 프리텐다드 JP에만 있는게 맞나 싶네요. 간자도 가능한 들어갔으면 좋겠구요.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.