화살표 유형의 새로운 글꼴에 대한 (드물게) 업데이트를 원하십니까?
? 화살표 유형 뉴스 레터에 가입하십시오! ?
Instagram에서 @arrowtype를 팔로우하십시오!
재귀 웹 시편 →에 대해 자세히 알아보십시오

재귀 Sans & Mono는 더 나은 코드 및 UI를 위해 구축 된 가변 유형 패밀리입니다. 캐주얼 스크립트 시그니처에서 영감을 얻은 채로, 주로 프로그래밍 환경 및 응용 프로그램 인터페이스의 요구를 충족하도록 설계되었습니다.
프로그래밍에서 "재귀"는 함수가 자체 출력을 입력으로 사용하여 강력한 결과를 얻을 때입니다. 재귀 모노는 자체를 구축하는 데 도움이되는 도구로 사용되었습니다. 파이썬 스크립트를 작성하여 유형 생산 작업을 자동화하고 시편 이미지를 생성하는 데 사용되었으며 HTML, CSS 및 JS에서 사용하여 웹 기반 증명 및 프로토 타입을 만듭니다. 이 적극적인 사용을 통해 재귀 모노는 하루 종일 일에 매우 유용 할뿐만 아니라보기에 재미있게 만들어졌습니다.
재귀 Sans는 부모 모노에서 글리프를 빌리지 만 편안한 가독성을 위해 많은 주요 글리프의 너비를 조정합니다. 메트릭은 슈퍼 플렉스 입니다. 모든 스타일은 모든 스타일에서 똑같은 수평 공간을 차지합니다. 이 3 축 변수 글꼴에서 텍스트 교대 나 레이아웃 리플 로우없이 무게, 경사 및 "표현"(캐주얼에서 엄격한 글자 형식) 사이의 유체 전환이 가능합니다. 이것은 UI의 새로운 대화식 가능성을 허용 할뿐만 아니라 독특한 조판 경험을 만듭니다.
Recursive는 통화 및 수학에 대한 수많은 유용한 기호 (자세한 내용은 문자 세트 노트 참조) 및 다음 언어에 대한 지원을 포함하여 수정 된 Google Fonts 라틴 전문가 문자 세트로 설계되었습니다.
Abenaki, Afaan Oromo, Afar, Afrikaans, Albanian, Alsatian, Amis, Anuta, Aragonese, Aranese, Aromanian, Arrernte, Arvanitic (Latin), Asturian, Atayal, Aymara, Azerbaijani, Bashkir (Latin), Basque, Belarusian (Latin), Bemba, Bikol, Bislama, Bosnian, Breton, Cape Verdean Creole, Catalan, Cebuano, Chamorro, Chavacano, Chichewa, Chickasaw, Cimbrian, Cofán, Cornish, Corsican, Creek, Crimean Tatar (Latin), Croatian, Czech, Danish, Dawan, Delaware, Dholuo, Drehu, Dutch, English, Esperanto, Estonian, Faroese, Fijian, Filipino, Finnish, Folkspraak, French, Frisian, Friulian, Gagauz (Latin), Galician, Ganda, Genoese, German, Gikuyu, Gooniyandi, Greenlandic (Kalaallisut), Guadeloupean Creole, Gwich’in, Haitian Creole, Hän, Hawaiian, Hiligaynon, Hopi, Hotcąk (Latin), Hungarian, Icelandic, Ido, Igbo, Ilocano, Indonesian, Interglossa, Interlingua, Irish, Istro-Romanian, Italian, Jamaican, Javanese (Latin), Jèrriais, Kaingang, Kala Lagaw Ya, Kapampangan (Latin), Kaqchikel, Karakalpak (Latin), Karelian (Latin), Kashubian, Kikongo, Kinyarwanda, Kiribati, Kirundi, Klingon, Kurdish (Latin), Ladin, Latin, Latino sine Flexione, Latvian, Lithuanian, Lojban, Lombard, Low Saxon, Luxembourgish, Maasai, Makhuwa, Malay, Maltese, Manx, Māori, Marquesan, Megleno-Romanian, Meriam Mir, Mirandese, Mohawk, Moldovan, Montagnais, Montenegrin, Murrinh-Patha, Nagamese Creole, Nahuatl, Ndebele, Neapolitan, Ngiyambaa, Niuean, Noongar, Norwegian, Novial, Occidental, Occitan, Old Icelandic, Old Norse, Onĕipŏt, Oshiwambo, Ossetian (Latin), Palauan, Papiamento, Piedmontese, Polish, Portuguese, Potawatomi, Q’eqchi’, Quechua, Rarotongan, Romanian, Romansh, Rotokas, Sami (Inari Sami), Sami (Lule Sami), Sami (Northern Sami), Sami (Southern Sami), Samoan, Sango, Saramaccan, Sardinian, Scottish Gaelic, Serbian (Latin), Seri, Seychellois Creole, Shawnee, Shona, Sicilian, Silesian, Slovak, Slovenian, Slovio (Latin), Somali, Sorbian (Lower Sorbian), Sorbian (Upper Sorbian), Sotho (Northern), Sotho (Southern), Spanish, Sranan, Sundanese (Latin), Swahili, Swazi, Swedish, Tagalog, Tahitian, Tetum, Tok Pisin, Tokelauan, Tongan, Tshiluba, Tsonga, Tswana, Tumbuka, Turkish, Turkmen (Latin), Tuvaluan, Tzotzil, Uzbek (Latin), Venetian, Vepsian, Vietnamese, Volapük, Võro, Wallisian, Walloon, Waray-Waray, Warlpiri, Wayuu, Welsh, Wik-Mungkan, Wiradjuri, Wolof, Xavante, Xhosa, Yapese, Yindjibarndi, Zapotec, Zarma, Zazaki, Zulu, Zuni
글꼴 사용을 고려할 때 글꼴 라이센스는 가장 먼저 찾고 읽어야 할 것 중 하나입니다. 글꼴 사용에 동의하는 방법을 간략하게 설명하며 글꼴 라이센스는 다른 유형 프로젝트 및 유형 파운드리마다 다릅니다.
재귀 프로젝트는 SIL Open Font 라이센스 v1.1에 따라 라이센스가 부여됩니다. 이것은 일련의 조건에서 글꼴 소프트웨어를 사용할 수있는 무료 소프트웨어 라이센스입니다. 권한, 조건 및 면책 조항에 대한 자세한 내용은 라이센스의 전체 텍스트를 참조하십시오.
쉬운 방법 : 글꼴 책에서 글꼴 파일을 열고 "글꼴 설치"를 클릭하십시오.
좋은 방법 :
<yourusername>/Library/Fonts 폴더로 이동하십시오TTF 파일을 두 번 클릭 한 다음 "설치"를 선택하십시오.
많은 정적 글꼴 파일을 설치하려면 (Microsoft Word 및 PowerPoint와 같은 앱에서 더 잘 작동 할 수 있음) :
static_fonts 폴더로 이동 한 다음 mono 또는 sans static_otf 폴더로 이동하십시오.이것은 큰 주제이지만, 몇 가지 좋은 가이드는 MDN과 CSS- 트릭에서 나온 것입니다.
일반적으로 글꼴에서 @font-face 사용하여 font-weight: 300 1000; 글꼴의 무게 범위를 지정하려면 :
@font-face {
font-family: 'Recursive';
src: url('path/to/font/<UPDATE_SPECIFIC_FONT_PATH>.woff2') format('woff2-variations');
font-weight: 300 1000;
}
그런 다음 font-weight 및 font-variation-settings 으로 글꼴을 사용할 수 있습니다!
참고 :
MONO 와 CASL 은 "등록되지 않은"축 (현재 Microsoft의 공식 변형 축 및 사양 목록에 있지 않음)이므로 이러한 태그는 모든 캡에 사용되며 font-variation-settings 통해 제어해야합니다.font-style 사용하여 slnt 및 CRSV 축을 제어 할 수 있지만, 2019 년 10 월 현재 도구는 가변 글꼴을 더 잘 지원하기 위해 빠르게 발전하고 있으므로 시간이 지남에 따라 향상 될 것입니다!) 현재 font-variation-settings 에서 가장 잘 작동합니다.font-variation-settings 보다 쉽게 제어 할 수 있습니다. Pixel Ambacht의 환상적인 튜토리얼 에서이 기술에 대해 자세히 알아보십시오. 코드 편집기에는 재귀를 사용하는 두 가지 주요 방법이 있습니다.
Rec Mono Fonts (릴리스 다운로드의 "recursive_code"폴더에 있습니다)를 설치하십시오. 여기에는 코드 인대 및 여러 스타일 세트가 사전 적용되므로 대부분의 코드 환경 및 앱에서 기본적으로 작동합니다. 이들은 또한 이탤릭체 및 대담한 스타일을 사용하는 코드 테마에 사용될 수있는 방식으로 명명되고 구성됩니다. Rec Mono Fonts (예 : 점선 0 또는 단일 층 g )에서 특정 기능을 구성하려면 재귀 코드 구성을 참조하십시오.
이 글꼴은 위의 "코드"글꼴보다 더 전통적인 방식으로 내장되어 있으므로 일부 상황에서는 약간 더 나을 수 있습니다. 그러나 장단점이 있습니다. 코드 인대는 많은 모노 스페이스 전용 앱에서 "코드"글꼴에서 더 잘 작동합니다. MacOS 11 이전의 Mac에서는 이탤릭체 스타일로 테마로 작동하지 않습니다.“코드”글꼴은 위의 참조를 참조하십시오. 그리고 "코드"글꼴을 사용하면 원하는 경우 좀 더 사용자 정의 할 수 있습니다!
표준 데크 탑 글꼴을 사용하려면 데스크탑 Recursive Mono 글꼴을 설치하십시오 (릴리스 다운로드의 "recursive_desktop"폴더에 있습니다). 그런 다음 코드 편집기에서이를 허용하면 활성화 및 OpenType 기능을 설정하십시오. 세 편집자에 대한 지침이 따릅니다.
요약하면 편집기 설정을 열고 글꼴 패밀리를 설정하십시오. 긴 글꼴 이름이 일부 환경에서 오류가 발생할 수 있으므로 이러한 가족 이름이 단축됩니다. 주요 약어는 다음과 같습니다.
Mn 모노 (Monospace/고정 된 윈스)를 의미합니다.Sn sans를 의미합니다 (비례/자연 폭)Csl 캐주얼을 의미합니다Lnr 선형을 의미합니다St 정적을 의미합니다 (전체 재귀 변수 글꼴과 같이 변수 와 반대) 따라서 Recursive Mn Csl St 또는 Recursive Mn Lnr St 사용하도록 편집기를 거의 설정하게됩니다.
설정에서 Font Family 검색 한 다음 사용하려는 가족을 지정하십시오.
재귀 모노 캐주얼 일반 :
"Recursive Mn Csl St", Menlo, "Apple Color Emoji", monospace
재귀 모노 선형 규칙의 경우 :
"Recursive Mn Lnr St", Menlo, "Apple Color Emoji", monospace
그런 다음 원하는 경우 fontLigatures 설정에서 검색하여 OpenType 기능을 활성화 한 다음 설정에서 편집 할 수 있습니다.
"editor.fontLigatures" : " 'ss01','ss05','dlig' " (위의 내용은 단순한 6 & 9 , 단일 층 a 제공하고 코드 합자를 활성화합니다.)
메뉴 표시 줄에서 Atom > Stylesheet 로 이동하여 다음을 추가하십시오.
atom-text-editor {
font-family : 'Recursive Mn Csl St' ; /* This sets the font family*/
font-feature-settings : "ss01" , "ss05" , "dlig" ; /* This sets OpenType features, if you want to set them. */
} font-family: 'Recursive Mn Lnr St'; 선형 가족을 얻기 위해.
Sublime Text -> Preferences -> Settings 으로 이동하여 font_face 사용하려는 스타일의 특정 PostScript 이름으로 설정하십시오.
재귀 모노 캐주얼 일반 :
"font_face" : " Recursive Mn Csl St " ,재귀 모노 선형 규칙의 경우 :
"font_face" : " Recursive Mn Lnr St " , 코드 인대 또는 기타 OPENTYPE 기능을 제어하려면 font_options 열어 두십시오.
"font_options" : [ " ss01 " , " ss05 " , " dlig " ],따라서 전체 설정은 다음과 같습니다.
{
"font_face" : " Recursive Mn Lnr St " ,
"font_size" : 24 ,
"theme" : " Adaptive.sublime-theme "
}재귀는 다음 축이 있습니다.
| 중심선 | 꼬리표 | 범위 | 기본 | 설명 |
|---|---|---|---|---|
| 모노 스페이스 | MONO | 0 ~ 1 | 0 | Sans (자연 폭)에서 모노 (고정 된 넓음) |
| 평상복 | CASL | 0 ~ 1 | 0 | 선형으로 캐주얼 |
| 무게 | wght | 300 ~ 1000 | 300 | Light to Extablack. 일반적인 글꼴 가중 속성으로 정의 할 수 있습니다. |
| 경사 | slnt | 0 ~ -15 | 0 | 똑바로 (0 °)부터 경사 (약 15 °) |
| 필기체 | CRSV | 0, 0.5 또는 1 | 0.5 | 항상 로마 (0), 자동 (0.5) 또는 항상 필기체 (1) |
축 정의, 재귀
Monospace MONO -0 ~ 1. 글리프 너비를 비례 또는 "산"(0)에서 고정 된 범위 또는 "모노"(1)로 조정합니다.
권장 사용 : 일반적으로 비례 설계는 텍스트와 UI에서 더 읽을 수 있으며, Monospace 디자인은 글자 명확성이 특히 중요한 코드 및 텍스트에 더 적합합니다 (예 : 암호, ID 번호, 표 형 데이터 등).
캐주얼 CASL -0 ~ 1. 글리프의 표현 스타일 또는 "장르"를 조정합니다. 재귀에서, 이것은 선형 (0)에서 캐주얼 (1)으로갑니다.
권장되는 사용 : 선형 스타일은 라이트 니스트 SAN의 측면을 합리적, 작곡, 평평한 편지 형식으로 병합하는 글꼴과 유사한 구조를 공유합니다. 이 규칙적이고 친숙한 구조는 초점이 필요한 긴 형식의 텍스트 (예 : 단락, 전체 코드 문서 및 펀치 헤드 라인)에 적합합니다. 캐주얼 스타일은 싱글 스트로크 캐주얼 시그널링에서 영감을 얻지 만 작은 크기로 그려집니다. 따뜻하고 매력적인 톤이 필요한 짧은 형태의 텍스트에서 가장 유용합니다 (예 : 블로그 게시물 헤드 라인, 상점 간판 및 컴퓨터 터미널).
무게 wght -300 ~ 1000. 글자의 전체 두께와 그것들로 구성된 텍스트의 어둠. 특히 재귀에서 중량 축은 글리프 너비에 영향을 미치지 않습니다. 대담한 무게는 MONO 축의 비례 스타일에서도 가벼운 무게와 같은 공간을 취합니다.
권장 사용 : 무게의 차이는 텍스트를 강조하거나 사용자 상호 작용을 표시하거나 의사 소통 톤을 조정할 수 있습니다. 어두운 배경의 가벼운 텍스트의 경우 400 ( "일반")은 텍스트와 코드에 적합한 경향이 있습니다. 가벼운 배경의 어두운 텍스트의 경우 무게를 500 ( "중간")으로 조정하는 것이 좋습니다.
왜 등급 축이 아닌가? 이슈 #365를 참조하십시오
경사 slnt -0 ~ -15. 글자의 "전방 마른". 참고 : -15 (네거티브 15)는 형상의 유형 디자인의 뿌리로 인해 15 ° 시계 방향 경사에 해당합니다. 이탤릭 축이 기본 값인 경우 -13.99 의 경사를 지나가는 "필기체"문자를 활성화하여 단순화 된 "단일 a "와 같은보다 손 g 쓴 형태로 변환합니다.
권장 사용 : 텍스트를 강조하거나 타이포 그래피 톤을 강조하는 보조 방법으로 경사를 사용하십시오. 텍스트에서는 -9 정도의 부분 경사를 사용하는 것이 유용 할 수 있지만 디스플레이 크기에서는 0 또는 -15에서 가장 정확한 윤곽선을 기대할 수 있습니다. 또한 글자 형식이나 글리프 너비가 변경되지 않고 0 에서 -13 으로 애니메이션 할 수 있습니다. 이는 호버링 된 링크 나 버튼과 같은 것들에 좋습니다.
필기체 CRSV - 0, 0.5 또는 1. 기울어 축을 따라 필기체 형태의 대체를 제어합니다. "Off"(0)은 "Double Story" a 및 g 와 같은 로마 문자 형식을 유지하고 "Auto"(0.5)는 필기체 대체를 허용하며 "(1)는 기울어 진 텍스트에서도 필기체 형태를 0의 기울어 진 텍스트로 주장합니다.
권장 사용 : 필기체를 3 차 방법으로 사용하거나 텍스트를 강조하거나 애니메이션 텍스트를보다 제어 할 수있는 방법으로 사용하십시오 (예 : 글리프 대체의 갑작스러운 변화를 방지하기 위해 필기체 0 또는 1을 사용하여 사용자 상호 작용에 대해 기울어 낼 수있는 하이퍼 링크).
일반적으로 Recursive는 중소 규모의 사용을위한 것이며, 특히 화면에서입니다. 그러나 어떤 문맥에서 가장 잘 작동하는 스타일 범위를 이해하는 것이 유용합니다. 알고있는 몇 가지 지침 :
| 스타일 범위 | 권장 크기 | 권장 사용 사례 |
|---|---|---|
| 캐주얼 0 (선형) , 무게 300–800 (Light -Extrabold) | 8px ~ 72px | 일반적인 사용 (특히 더 긴 텍스트의 경우) |
| 캐주얼 1 (캐주얼) , 무게 300–800 (Light – Extrabold) | 14px ~ 72px | 일반적인 사용 (더 많은 성격) |
| 웨이트 801–900 (Black – Extrablack) | 32px ~ 144px | 헤드 라인, 디스플레이 타이포그래피 |
| 캐주얼과 경사의 중간 값 | 10px ~ 40px | 텍스트는 좋지만 디스플레이 크기가 좋지 않을 수 있습니다. |
알아야 할 사항 :
CASL 및 slnt 값을 피하십시오. 디자인 앱 (예 : Mono Casual Bold Italic 등)의 명명 된 인스턴스를 고수하면 자동으로 처리됩니다.Recursive는 몇 가지 편리한 타이포그래피 기능을 간단하게 제어 할 수있는 여러 OpenType 기능으로 구축됩니다.

구축하려면 가상 환경을 설정하십시오
virtualenv -p python3 venv
그런 다음 활성화하십시오.
source venv/bin/activate
그런 다음 요구 사항을 설치하십시오.
pip install -U -r requirements.txt
또한:
pip install git+https://github.com/LettError/DesignspaceProblems
글꼴은 mastering/build.py 스크립트로 제작되었습니다. 이 스크립트는 모든 것을 빌드 할 수 있습니다 ( python build.py --all ) 또는 글꼴의 하위 집합. 모든 옵션을 보려면 python build.py -h 입력하여 모든 옵션을 확인하십시오. 권장 빌드 프로세스는 아래에 자세히 설명되어 있습니다.
참고 : mastering/build_variable.py 파일 ( mastering/prep_fonts.py ) mastering/build_files.py 준비하고 소스 파일 ( build_static.py 이 스크립트는 빌드 파일에 한 가지 일을하고 싶다면 유용 할 수 있습니다. 각각 문서화 된 명령 줄 인수 세트 ( python <script_name> -h )는 문서를 볼 수 있습니다.
먼저, 글꼴을 준비하십시오
시작하기 전에 작업 디렉토리를 mastering 으로 변경하십시오.
cd mastering
python build.py --files 첫 번째 단계입니다. 이렇게하면 변수 및 정적 글꼴을 구축하는 데 필요한 모든 파일이 생성됩니다. 이 명령 ( python build.py --version 1.085 --files )으로 글꼴에 버전 번호를 제공 할 것입니다. 가변 글꼴에 대한 파일 만 준비하려면 python build.py --varfiles 사용하거나 정적 글꼴에 대한 파일 만 준비하려면 python build.py --statfiles 사용하십시오.
파일이 생성 된 후 (정적 인스턴스를 생성하는 데 약간의 시간이 걸린다는 점에 유의하십시오) mastering/build/static/CFF/checkoutlines.txt 파일을 살펴 보겠습니다. 이것은 CheckoutlinesUFO에서 보고서 (주의가 필요하지 않은 문제를 제거하기 위해 편집 됨)입니다. 이 보고서에서 발견 된 문제는 정적 UFO에서 정리해야합니다. 많은 문제는 중복 제거로 인한 것입니다. 완벽한 것은 없으며 포함 된 겹침 제거 알고리즘이 포함되어 있습니다.
변수 글꼴을 구축합니다
가변 글꼴을 구축하려면 실행하십시오.
# activate venv, install dependencies, cd mastering
version=1.085 # (replace version number)
python build.py --varfiles --version $version
python build.py --variable --version $version정적 글꼴을 구축합니다
모든 정적 글꼴을 구축하려면 실행하십시오.
# activate venv, install dependencies, cd mastering
version=1.085 # (replace version number)
python build.py --statfiles --version $version
python build.py --static --version $version모든 글꼴을 구축합니다
모든 글꼴의 모든 소스, 글꼴 및 WOFF2 버전을 빌드하려면 다음과 같습니다.
# activate venv, install dependencies, cd mastering
python build.py --all --version 1.085 # (replace version number)알림 받기 (Mac 만 해당)
스크립트 호출에 옵션 --pync ( -p )를 Mac 알림을 가져 오기 위해 스크립트 호출에 추가합니다. 이는 빌드가 실행되는 동안 다른 작업을 수행하는 경우 도움이 될 수 있습니다.
# activate venv, install dependencies, cd mastering
python build.py --all --pync --version 1.085 # (replace version number)먼저 위의 마스터 링 흐름이있는 글꼴을 작성하십시오. 그 다음에:
# navigate to the root directory of the project, then...
# update to latest font build directory
fontDir= " fonts_1.085 "
src/build-scripts/make-release/00-prep-release.sh $fontDir 그런 다음 최신 변수 글꼴을 로컬 재귀 코드 구성 리포에 복사하여 업데이트 된 코드 글꼴을 작성하십시오. 새로 만든 디렉토리 fonts/ArrowType-Recursive-1.XXX/Recursive_Code 에 이것을 복사하십시오.
마지막으로 REPO의 릴리스 페이지로 이동하여 새 페이지를 만드십시오.
이 프로젝트에는 많은 양의 연구가 포함되어 있으며 ( docs/ 에 포함되어 있음) 많은 소형 도구가 포함되어 있습니다 ( src/00-recursive-scripts-for-robofont 에 포함되어있는 많은 소형 도구가 포함되어 있습니다.
터미널의 Robofont 스크립트 폴더로 이동하십시오.
cd 입력 한 다음 Scripts 폴더를 복사하거나 DRAP-N-DROP하여 전체 FILEPATH를 얻습니다. 반품/입력을 누르십시오. 재귀 프로젝트 스크립트 폴더, src/00-recursive-scripts-for-robofont
ln -s 입력하십시오src/00-recursive-scripts-for-robofont 전체 경로를 얻으려면 사본-페이스트 또는 드래그 -N-DROP. 반품/입력을 누르십시오.ls 실행하여 거기에 있는지 확인하십시오. src/00-recursive-scripts-for-robofont 제공되는 항목 중 하나로 표시됩니다.따라서 이것은 다음과 같습니다.
ln -s ~/FOLDER_PATH/robofont-scripts ~/FOLDER_PATH/recursive/src/00-recursive-scripts-for-robofont
이제 스크립트 메뉴에서 직접 재귀 프로젝트 스크립트를 실행하거나 스크립팅 창에서 열어서 실행할 수 있습니다.
프로젝트에 기여하는 정책은 Contributing.md를 참조하십시오.