Recursive: fontbakery ์ˆ˜์ •: ํ•ฉ์ž ์บ๋Ÿฟ ์ถ”๊ฐ€

์— ๋งŒ๋“  2020๋…„ 02์›” 05์ผ  ยท  13์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: arrowtype/recursive

Google Fonts์— ๋ณ‘ํ•ฉํ•˜๊ธฐ ์ „์— FontBakery ๋ฅผ ํ†ตํ•ด ๊ฐ€๋ณ€ ๊ธ€๊ผด์„ ์‹คํ–‰ํ•˜๊ณ  ๋”ฐ๋ผ์•ผ ํ•  ์ค‘์š”ํ•œ ๊ฒ€์‚ฌ๋ฅผ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ถ€๋Š” ๋ฐ˜ ์œ ์—ฐํ•œ "์˜๊ฒฌ"(์˜ˆ: UPM์€ 2000์ด์–ด์•ผ ํ•จ)์ด๊ณ  ๋‹ค๋ฅธ ์ผ๋ถ€๋Š” ๊ธฐ๋ก๋œ ๋ฒ„๊ทธ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค(์˜ˆ: ๋‹ค์–‘ํ•œ ์†Œํ”„ํŠธ์›จ์–ด์˜ ๋ฌธ์ œ๋ฅผ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด ํŠน์ • ํ…Œ์ด๋ธ”์„ ์ถ”๊ฐ€ํ•ด์•ผ ํ•จ).

์œ ํšจํ•œ ๋ฌธ์ œ๋ฅผ ๊ธฐ๋กํ•ด ๋†“์€ ๋‹ค์Œ ์ˆ˜์ •ํ•˜๋Š” ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ž‘์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

aug-2020 details to fix fixed in sources

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

๋‚˜๋Š” ์ข…์ข… ์žฌ๊ท€๋ฅผ '๋ชจ๋ฒ”์ ์ธ' VF๋กœ ์‚ฌ์šฉํ•˜๋ฉฐ,
GF ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์žˆ๋Š” ์˜ฌ๋ฐ”๋ฅธ ์บ๋Ÿฟ ์œ„์น˜ ์ง€์ •์„ ์ง€์›ํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜/OS
์ด ๋ฐ์ดํ„ฐ๋ฅผ ์ง€์›ํ•˜๋Š” ๊ฒƒ์ด ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ฒ˜์Œ์— FB๋ฅผ ์ง€์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.
FAIL๋กœ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ํ•˜์ง€๋งŒ ์ด ๋…ธ๋ ฅ์˜ ์šฐ์„  ์ˆœ์œ„๋ฅผ ๋‚ฎ์ถ”๋Š” ๊ฒƒ์€ ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ถ”๊ฐ€ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.
์–ด๋–ค ์ด์œ ๋กœ ๋‹ค์‹œ ํ•ฉ์žํ•˜๋Š” ๊ฒฝํ–ฅ์ด ์žˆ์ง€ ์•Š๋Š” ํ•œ(์˜ˆ: ๋„ˆ๋น„๊ฐ€
์ผ๊ด€์„ฑ) ๊ทธ๋Ÿฐ ๋‹ค์Œ ๊ทธ๋•Œ์— ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  13 ๋Œ“๊ธ€

ํ•„์š”ํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ:

  • [x] VF ๊ธ€๊ผด ์ด๋ฆ„์ด Recursive[axislist].ttf๋กœ ๋ณ€๊ฒฝ๋จ
  • [x] ํ•ฉ์ž ์บ๋Ÿฟ ์ถ”๊ฐ€
  • [x] ๋‹ค์Œ ๊ธ€๋ฆฌํ”„ ์ด๋ฆ„์„ ์ค„์ด์‹ญ์‹œ์˜ค. quotesingle_quotesingle_quotesingle.code, hyphen_space_bracketleft_space_bracketright.code, hyphen_space_bracketleft_x_bracketright.code, numbersign_numbersign_numbersign.code, numbersign_numbersign_numbersign_numbersign.code and ampersand_ampersand_ampersand.code
  • [x] fsType์„ 0์œผ๋กœ ์„ค์ •
  • [x] ๋ผ์ด์„ ์Šค, ์ €์ž‘๊ถŒ ๋“ฑ ์ •๋ณด ํ•„์š”
  • [x] gasp ํ…Œ์ด๋ธ” ์ถ”๊ฐ€
  • [x] ๊ธฐ๋ณธ ๊ธ€๊ผด ์ด๋ฆ„ ์ˆ˜์ •
  • [x] prep ํ…Œ์ด๋ธ” ์ถ”๊ฐ€
  • [x] dsig ์ถ”๊ฐ€

์•ž์œผ๋กœ ๋‚˜์˜ฌ ๊ธ€๊ผด ๋ฒ ์ด์ปค๋ฆฌ ๋ฌธ์ œ:

  • ํ˜„์žฌ varfont_instance_coordinates ๊ฒ€์‚ฌ์—์„œ "MONO" ์ถ• ์ด๋ฆ„์— ๋Œ€ํ•ด ํ—›์†Œ๋ฆฌ๋ฅผ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ธ์Šคํ„ด์Šค ์ด๋ฆ„ ์ง€์ • ํ•˜์œ„ ํŒจ๋ฐ€๋ฆฌ์˜ ๊ฒฝ์šฐ์— ์„ค์ •๋˜์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค(์˜ˆ: "Mono Linear Light" is incorrect. It should be "Light" ).
  • MVAR ํ…Œ์ด๋ธ”: ์ด ๊ฒ€์‚ฌ๊ฐ€ ์—ฌ์ „ํžˆ ์œ ํšจํ•ฉ๋‹ˆ๊นŒ?

๋ฌด์‹œํ•  ๋ฌธ์ œ(?)

  • 1000 ๋Œ€์‹  2000์—์„œ UPM

๊ณ ๋งˆ์›Œ, ๋ฒค!

์ด๋“ค ์ค‘ ๋ช‡ ๊ฐ€์ง€๋Š” ๋ถ„๋ช…ํžˆ ์†Œ์Šค์—์„œ ์ˆ˜์ •๋˜์–ด์•ผ ํ•˜์ง€๋งŒ ์ผ๋ฐ˜์ ์œผ๋กœ ์ด๋Ÿฌํ•œ ๋ฌธ์ œ ์ค‘ ๋งŽ์€ ๋ถ€๋ถ„์€ ์…ธ ์Šคํฌ๋ฆฝํŠธ(๋นŒ๋“œ์™€ ํ•จ๊ป˜ ๋˜๋Š” ์ž ์žฌ์ ์œผ๋กœ ์ˆ˜์ • + PR ์Šคํฌ๋ฆฝํŠธ์— ํ‘ธ์‹œ)๋กœ ํ•ด๊ฒฐ๋ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—์„œ ๊ทธ๋ ‡๊ฒŒ ํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ, ์•„๋‹ˆ๋ฉด ๋‹ค๋ฅธ ๋งˆ์Šคํ„ฐ๋ง python ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋งŒ๋“ค์–ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์‹ญ๋‹ˆ๊นŒ?

๊ฐ€๋ณ€ ๊ธ€๊ผด ๋นŒ๋“œ ์Šคํฌ๋ฆฝํŠธ์— ์ถ”๊ฐ€ํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

fsType ๋ฐ ๋ผ์ด์„ผ์Šค ๋ฌธ์ž์—ด์„ 714694c22e0750166c166812dc05ff85705fe066์œผ๋กœ ์„ค์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ์—๋Š” ๊ธด ๊ธ€๋ฆฌํ”„ ์ด๋ฆ„์„ ์ค„์ด๊ฒ ์Šต๋‹ˆ๋‹ค. ์บ๋Ÿฟ์€ ์‹ค์ œ๋กœ ์–ด๋–ค ๊ฒƒ์—๋„ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€๋งŒ, ์บ๋Ÿฟ๋„ ์ถ”๊ฐ€ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํ•ฉ์ž ์บ๋Ÿฟ์€ ํ•ฉ์ž ๊ธ€๋ฆฌํ”„ ๋‚ด๋ถ€์— ์ปค์„œ๋ฅผ ๋ฐฐ์น˜ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

314๋Š” gasp , prep ๋ฐ dsig ํ…Œ์ด๋ธ”์„ ๊ฐ€๋ณ€ ๊ธ€๊ผด ๋นŒ๋“œ์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ๋ฅผ ๋๋‚ด๊ณ  โ€“ ํ˜„์žฌ ํ•ฉ์ž ์บ๋Ÿฟ์€ UFO ์†Œ์Šค์—์„œ ์ƒ์„ฑ๋œ ๊ธ€๊ผด์— ์‹ค์ œ๋กœ ๋‚ด์žฅ๋˜์–ด ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/googlefonts/ufo2ft/issues/329

๋˜ํ•œ ํ”„๋กœ๊ทธ๋žจ์€ ํ•ฉ์ž ๋‚ด๋ถ€์— ์บ๋Ÿฟ์„ ๋ฐฐ์น˜ํ•  ์œ„์น˜๋ฅผ ์ž˜ ์ถ”์ธกํ•˜๋Š” ๊ฒฝํ–ฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ด๊ฒƒ์ด ์ผ๋ถ€ ๊ธ€๊ผด์˜ ๊ฒฝ์šฐ ๋ฌธ์ œ๊ฐ€ ๋  ์ˆ˜ ์žˆ์ง€๋งŒ ์‹ค์ œ๋กœ Recursive์˜ ๊ฒฝ์šฐ ์‚ฌ์šฉ์ž ๋ฌธ์ œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๋‚˜์ค‘์— ์บ๋Ÿฟ์„ ๊ธ€๊ผด๋กœ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•ด์ง€๊ณ  ์‚ฌ์šฉ์ž๊ฐ€ ์ด์— ๋Œ€ํ•ด ๋ถˆํ‰ํ•˜๋ฉด ์ƒˆ ๋ฌธ์ œ๋ฅผ ์—ด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์•ฝ๊ฐ„์˜ ์Šคํฌ๋ฆฝํŒ…๊ณผ ์•ฝ๊ฐ„์˜ ์ˆ˜๋™ ์ž‘์—…์œผ๋กœ ๋น„๊ต์  ๋น ๋ฅด๊ฒŒ ๊ณ ์น  ์ˆ˜ ์žˆ์ง€๋งŒ ๊ธฐ๋Šฅ์ด ์ง€์›๋˜๊ณ  ํ•„์š”ํ•˜์ง€ ์•Š๋Š” ํ•œ ์‹œ๊ฐ„์„ ๋ณด๋‚ด๋Š” ๊ฒƒ์€ ๋ฌด์˜๋ฏธํ•ด ๋ณด์ž…๋‹ˆ๋‹ค.

์บ๋Ÿฟ ๋ฐ์ดํ„ฐ๊ฐ€ ์†Œ์Šค์— ์žˆ์Šต๋‹ˆ๊นŒ? ๊ทธ๋ ‡๋‹ค๋ฉด SGTM

ํ•ฉ์ž ์บ๋Ÿฟ์€ ํ˜„์žฌ ์†Œ์Šค์— ์—†์œผ๋ฉฐ ์œ ์šฉํ•˜๋‹ค๋ฉด ๊ธฐ๊บผ์ด ์ถ”๊ฐ€ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ œ์™ธ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•œ ๋ฌธ์ œ์— ๋Œ€ํ•ด์„œ๋Š” ์•Œ์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค. ๋‹จ์ง€ ์ถ”๊ฐ€ํ•˜๊ธฐ ์œ„ํ•ด ์ถ”๊ฐ€ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?

๋‚˜๋Š” ์ข…์ข… ์žฌ๊ท€๋ฅผ '๋ชจ๋ฒ”์ ์ธ' VF๋กœ ์‚ฌ์šฉํ•˜๋ฉฐ,
GF ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์žˆ๋Š” ์˜ฌ๋ฐ”๋ฅธ ์บ๋Ÿฟ ์œ„์น˜ ์ง€์ •์„ ์ง€์›ํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜/OS
์ด ๋ฐ์ดํ„ฐ๋ฅผ ์ง€์›ํ•˜๋Š” ๊ฒƒ์ด ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ฒ˜์Œ์— FB๋ฅผ ์ง€์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.
FAIL๋กœ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ํ•˜์ง€๋งŒ ์ด ๋…ธ๋ ฅ์˜ ์šฐ์„  ์ˆœ์œ„๋ฅผ ๋‚ฎ์ถ”๋Š” ๊ฒƒ์€ ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ถ”๊ฐ€ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.
์–ด๋–ค ์ด์œ ๋กœ ๋‹ค์‹œ ํ•ฉ์žํ•˜๋Š” ๊ฒฝํ–ฅ์ด ์žˆ์ง€ ์•Š๋Š” ํ•œ(์˜ˆ: ๋„ˆ๋น„๊ฐ€
์ผ๊ด€์„ฑ) ๊ทธ๋Ÿฐ ๋‹ค์Œ ๊ทธ๋•Œ์— ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

์•Œ๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ช…ํ™•ํžˆ ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ํ•ฉ์ž ์บ๋Ÿฟ์ด ํ•„์š”ํ•œ ๋‹ค๋ฅธ ๊ธ€๊ผด์ด ์ ์ ˆํ•œ ์ง€์›์„ ๋ฐ›๋Š” ๋ฐ ๋„์›€์ด ๋œ๋‹ค๋ฉด ์—ฌ๊ธฐ์— ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. https://github.com/arrowtype/recursive/issues/431์„ ์ˆ˜์ •ํ•˜๋Š” ๊ฒƒ๊ณผ ๋™์ผํ•œ ๋ฆด๋ฆฌ์Šค์— ๋Œ€ํ•ด ์ž‘์—…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค!

๋‚˜๋Š” ์†Œ์Šค์— ํ•ฉ์ž ์บ๋Ÿฟ์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์„ (๋Œ€๋ถ€๋ถ„) ์ž๋™ํ™”ํ•  ์ˆ˜ ์žˆ๋Š” ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ž‘์—…ํ–ˆ์Šต๋‹ˆ๋‹ค( ์Šคํฌ๋ฆฝํŠธ์— ๋Œ€ํ•œ ์˜๊ตฌ ๋งํฌ ).

๊ทธ๋Ÿฐ ๋‹ค์Œ ์บ๋Ÿฟ( permalink )์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋งˆ์ง€๋ง‰ ๋‹จ๊ณ„๋Š” ์ถ”๊ฐ€๋œ ํ•ฉ์ž ์บ๋Ÿฟ์ด _new_ ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚ค์ง€ ์•Š๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ํŠนํžˆ ์ฝ”๋“œ ๊ธ€๊ผด์„ ํฌํ•จํ•œ ๋ชจ๋“  ๊ธ€๊ผด์„ ๋นŒ๋“œํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰