Fontship เป็นชุดเครื่องมือสำหรับการสร้างฟอนต์และเครื่องมือสำหรับเวิร์กโฟลว์การทำงานร่วมกัน
พัฒนาขึ้นในลีกประเภทที่เคลื่อนย้ายได้ด้วยความต้องการของโครงการฟอนต์โอเพนซอร์ซในใจตัวอักษรโดยอัตโนมัติกระบวนการเปลี่ยนแหล่งออกแบบของคุณให้กลายเป็นไฟล์ฟอนต์พร้อมการผลิตและรวมเข้าด้วยกันเพื่อเผยแพร่ ใช่คุณสามารถทำตามขั้นตอนเดียวกันทั้งหมดด้วยตนเอง ใช่คุณสามารถเขียนสคริปต์ของคุณเองเพื่อทำงานเดียวกัน สิ่งที่ตัวอักษรนำมาสู่โต๊ะเป็นชุดที่สมบูรณ์ของเครื่องมือทั้งหมดที่คุณต้องรวบรวมด้วยบิตส่วนใหญ่ที่มีสายแล้ว
แบบอักษรหนึ่งอาคารจากแหล่งที่มานั้นเป็นแบบอัตโนมัติอย่างสมบูรณ์การสร้างอัตโนมัติจาก CI และการเผยแพร่เผยแพร่เป็นเพียงไม่กี่ก้าว ในฐานะที่เป็นโบนัสเพิ่มเติมทุกอย่างถูกจัดระเบียบอย่างรอบคอบเพื่อให้การทำงานร่วมกันจากระยะไกลแบบอะซิงโครนัสผ่านระบบควบคุมเวอร์ชัน (เช่น Git) ได้ง่ายที่สุดเท่าที่จะทำได้ นักออกแบบไม่จำเป็นต้องใช้เครื่องมือออกแบบเดียวกัน!
เกือบทุกด้านของขั้นตอนการสร้างและเวิร์กโฟลว์สามารถปรับแต่งได้ตามโครงการ แต่ออกจากการตั้งค่ากล่องควรทำงานเพื่อสร้างโครงการแบบอักษรส่วนใหญ่
ตัวอักษรสามารถใช้ในสามวิธีที่แตกต่างกัน:
หมายเหตุ: วิธีที่สี่ที่สนับสนุนผ่าน v0.5.0 การรวมไฟล์กฎของตัวอักษรโดยตรงลงใน MakeFile ที่มีอยู่ในโครงการของคุณได้ถูกเลิกใช้แล้ว ขึ้นอยู่กับโครงการของคุณการใช้งานดังกล่าวอาจดำเนินต่อไปหรือไม่ทำงานต่อไปโดยมีข้อ จำกัด ในขณะนี้ แต่คุณสมบัติใหม่ที่เพิ่มเข้ามาใน CLI จะถูก สันนิษฐาน ในกฎที่จะเกิดขึ้นในอนาคต
สร้างแบบอักษรของคุณโดยไม่ต้องติดตั้งหรือทำงานอะไรในพื้นที่! เพียงผลักดันแหล่งที่มาของคุณไปยังที่เก็บ Git ระยะไกลและปล่อยให้ตัวอักษรทำส่วนที่เหลือ
สำหรับใช้กับการกระทำของ GitHub ให้เพิ่มไฟล์การกำหนดค่าลงในที่เก็บของคุณเช่น .github/workflows/fontship.yml :
name : Fontship
on : [push, pull_request]
jobs :
fontship :
runs-on : ubuntu-latest
name : Fontship
steps :
- name : Checkout
uses : actions/checkout@v2
with :
fetch-depth : 0
- name : Fetch tags
run : git fetch --prune --tags
- name : Fontship
uses : theleagueof/fontship@latestในเวลาปัจจุบันตัวอักษรสร้างแบบอักษรลงในไดเรกทอรีโครงการปัจจุบันเท่านั้นมันไม่ได้เผยแพร่ทุกที่ คุณจะต้องโพสต์สิ่งประดิษฐ์ที่เกิดขึ้นโดย (เช่นโดยการแนบพวกเขากับแต่ละ CI run หรือเผยแพร่ในการเผยแพร่) เป็นอีกขั้นตอนหนึ่งของเวิร์กโฟลว์ของโครงการของคุณ สำหรับตัวอย่างการทำงานเต็มรูปแบบให้ดูเวิร์กโฟลว์ของ League Spartan หรือ Libertinus
นักวิ่ง CI อื่น ๆ สามารถรองรับได้อย่างง่ายดายดูปัญหา #32 สำหรับรายละเอียดหรือขอตัวอย่างการกำหนดค่าสำหรับรายการโปรดของคุณ
รูปภาพ Docker Prebuilt มีให้บริการจาก Docker Hub, แพ็คเกจ GitHub หรือคุณสามารถสร้างด้วยตัวเองได้
วิธีที่ง่ายที่สุดในการสร้างอินสแตนซ์คอนเทนเนอร์ Docker ด้วยอาร์กิวเมนต์ที่ถูกต้องทั้งหมดคือการตั้งค่านามแฝง (ซึ่งสามารถเพิ่มลงในไฟล์ RC ของเชลล์ของคุณเพื่อคงอยู่):
การใช้ Docker Hub เป็นตัวอย่างนามแฝงอาจเป็น:
$ alias fontship= ' docker run -it --volume "$(pwd):/data" --user "$(id -u):$(id -g)" theleagueof/fontship:latest ' Docker จะดึงคอนเทนเนอร์ที่ต้องการเรียกใช้โดยอัตโนมัติในครั้งแรกที่คุณใช้หลังจากนั้นจะใช้แคชคอนเทนเนอร์ท้องถิ่น หากต้องการกระโดดเริ่มต้นการดาวน์โหลดโดยไม่ต้องใช้ fontship หรืออัปเดตแคชของคุณด้วยตนเองในภายหลัง (เช่นเมื่อ ล่าสุด ได้รับการอัปเดตเป็นรุ่นใหม่) ใช้ docker pull theleagueof/fontship:latest
คุณอาจแทนที่ ล่าสุด (ซึ่งจะเป็นแท็กเวอร์ชันที่เพิ่งเปิดตัวล่าสุด) กับ Master เพื่อใช้งานสร้างที่ยังไม่ได้เผยแพร่สดใหม่ด้วยชื่อแท็กเช่น V0.3.2 เพื่อใช้เวอร์ชันเฉพาะอย่างชัดเจนหรือมี หัว เพื่อใช้ภาพที่สร้างขึ้นในเครื่อง
ในการสร้างอิมเมจนักเทียบท่าในเครื่องคุณจะต้องโคลนพื้นที่เก็บข้อมูลนี้และเรียกใช้ ./bootstrap.sh หรือดาวน์โหลดและแยกแหล่งที่มาจากการเปิดตัวจากนั้นเรียกใช้:
$ ./configure
$ make dockerหากคุณใช้ Arch Linux คุณสามารถติดตั้งแพ็คเกจ AUR นี้ (prebuilt ในที่เก็บนี้)
มิฉะนั้นในการติดตั้งและใช้งานในพื้นที่จากแหล่งที่มาคุณจะต้องมีการพึ่งพาบางอย่าง:
diffutils , bsdtar , entr , zsh ,make (4.2+) ด้วยเครื่องมือ autoconf ที่สอดคล้องกันcargo และ rustc เพื่อสร้าง CLIsfnt2woff-zopfli , psautohint , ttfautohint และ woff2_compress ในการติดตั้งซอฟต์แวร์ลงในคอมพิวเตอร์ของคุณให้โคลนที่เก็บนี้และเรียกใช้ ./bootstrap.sh หรือดาวน์โหลดและแยกรุ่นล่าสุดจากนั้นเรียกใช้:
$ ./configure
$ make
$ sudo make installเพื่อสร้างรูปแบบที่เป็นไปได้ทั้งหมดสำหรับโครงการฟอนต์ของคุณ Run
$ fontship make allหากต้องการสร้างรูปแบบเฉพาะเท่านั้นลอง:
# Just static OTF fonts
$ fontship make otf
# All static formats
$ fontship make static
# All variable formats
$ fontship make variable
# Just variable TTF format
$ fontship make variable-ttfหากคุณสนใจเพียงไฟล์เดียวเท่านั้น (พูดว่าอินสแตนซ์น้ำหนักคงที่) คุณสามารถระบุชื่อไฟล์ที่แน่นอนที่คุณคาดว่าจะได้รับการสร้างใหม่ที่เร็วที่สุดเท่าที่จะเป็นไปได้ของไฟล์นั้น:
$ fontship make FooBar-Black.otfเมื่อทุกอย่างพร้อมหรือคุณต้องการจัดส่งแบบอักษร (หรือส่งตัวอย่างให้เพื่อน) คุณจะต้องสร้างแพ็คเกจการกระจาย:
$ fontship make dist การตั้งค่ารุ่นตัวอักษรในแบบอักษรที่สร้างขึ้นทั้งหมดจะถูกกำหนดโดยแท็กบนที่เก็บ Git แท็กเวอร์ชันควรสอดคล้องกับรูปแบบ MAJOR.MINOR ที่อธิบายโดย OpenFV