ตัวอักษรหนึ่งตัวเข้าไปในเว็บฟอนต์ทั้งหมดออกมา
จุดประสงค์ของเครื่องมือนี้คือการสร้างรูปแบบฟอนต์ที่เป็นมิตรกับเว็บและกฎ CSS @font-face จากไฟล์แบบอักษรโดยพลการโดยไม่ต้องพึ่งพาบริการเว็บหรือต้องการการเชื่อมต่อเครือข่าย เครื่องมือนี้สามารถสร้าง URL ข้อมูลแบบอินไลน์ได้หากจำเป็น
ดูบทความที่ใช้ @font-face บน CSS-tricks.com สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการเพิ่มความเข้ากันได้ของตัวอักษรฝังตัว
./setup # Fetch and build third-party libraries
./bin/generate-webfonts MyFont.ttf -o assets/ # Convert a font สคริปต์ไดรเวอร์คือ generate-webfonts ที่พื้นฐานที่สุดมันยอมรับไฟล์ตัวอักษรเป็นอาร์กิวเมนต์และพ่นฟอนต์ที่แปลงทั้งหมดออกเป็นไดเรกทอรี นอกจากนี้ยังสามารถสร้าง CSS สำหรับกฎ @font-face ที่เหมาะสมเช่นกัน
./bin/generate-webfonts -o assets MyFont.ttf --css MyFont.css
คำสั่งด้านบนซึ่งใช้รูปแบบเอาต์พุตเริ่มต้นสร้างไฟล์ต่อไปนี้:
MyFont.cssassets/MyFont.woffassets/MyFont.woff2assets/MyFont.ttfassets/MyFont.eotassets/MyFont.svg ไฟล์ MyFont.css จะมีสิ่งต่อไปนี้:
@font-face {
font-family : 'MyFont' ;
src : url ( 'assets/MyFont.eot' );
src : url ( 'assets/MyFont.eot?#iefix' ) format ( 'embedded-opentype' ) ,
url ( 'assets/MyFont.woff2' ) format ( 'woff2' ) ,
url ( 'assets/MyFont.woff' ) format ( 'woff' ) ,
url ( 'assets/MyFont.ttf' ) format ( 'truetype' ) ,
url ( 'assets/MyFont.svg#MyFont' ) format ( 'svg' );
}ตามแนวคิดเมื่อได้รับรายการไฟล์อินพุตและรายการรูปแบบเอาต์พุตตัวแปลงจะพยายามตอบสนองความต้องการรูปแบบเอาต์พุตทั้งหมดโดยการคัดลอกไฟล์อินพุตที่ตรงกันและแปลงไฟล์เพื่อเติมเต็มช่องว่าง เนื่องจากข้อ จำกัด ในตัวแปลงฟอนต์พื้นฐานอาจมีการร้องขอรูปแบบกลางบางรูปแบบที่ไม่ได้ร้องขอ
คำสั่งจะหลีกเลี่ยงการสร้างไฟล์ในรูปแบบเอาต์พุตที่แน่นอนหากไฟล์ที่ตรงกับรูปแบบนั้นมีการระบุไว้แล้วว่าเป็นหนึ่งในอินพุต ในกรณีนี้ไฟล์อินพุตจะถูกคัดลอกไปยังไดเรกทอรีปลายทาง (หรือทิ้งไว้ตามลำพังหากมีอยู่แล้วในไดเรกทอรีเอาต์พุต) หากไฟล์ดังกล่าวไม่ได้อยู่ในรายการอาร์กิวเมนต์มันจะถูกเขียนทับด้วยไฟล์ที่แปลงใหม่แม้ว่าจะมีอยู่แล้วในไดเรกทอรีเอาต์พุต
ดูตัวเลือกด้านล่างสำหรับการใช้งานขั้นสูงเพิ่มเติม
สคริปต์ bin/generate-webfonts ยอมรับรายการไฟล์ตัวอักษรเป็นอินพุตและจำนวนของตัวเลือก:
-o --outputไดเรกทอรีปลายทางสำหรับไฟล์ที่แปลงแล้ว แม้ว่าจะมีการสร้างแบบอักษรแบบอินไลน์เท่านั้น แต่จำเป็นต้องมีไดเร็กทอรีปลายทางในการเก็บไฟล์ระดับกลาง
-f --formatรายการรูปแบบเอาต์พุตที่คั่นด้วยเครื่องหมายจุลภาค รูปแบบที่เป็นไปได้คือ:
รูปแบบใด ๆ ที่ต่อท้ายด้วย :inline จะทำให้ตัวอักษรถูก inlined ในไฟล์ CSS เป็น URL ข้อมูลที่เข้ารหัส Base64 มากกว่า URL ไปยังไฟล์
รายการรูปแบบเริ่มต้นคือ eot,woff2,woff,ttf,svg
-c --css เส้นทางสำหรับไฟล์ CSS ที่สร้างขึ้น ใช้ - สำหรับ stdout หากละเว้นจะไม่มีการสร้าง CSS
-p --prefix คำนำหน้าของเส้นทางตัวอักษรที่ใช้ใน CSS ที่สร้างขึ้น ตัวอย่างเช่นหากสไตล์ชีทของคุณเสิร์ฟจาก css/ และฟอนต์ของคุณเสิร์ฟจาก fonts/ คุณจะต้องตั้งคำนำหน้าเป็น ../fonts/ / คำนำหน้าเริ่มต้นคือชื่อของไดเรกทอรีเอาต์พุต
--font-familyชื่อของตระกูลตัวอักษรที่ใช้ในไฟล์ CSS ค่าเริ่มต้นคือชื่อพื้นฐานของไฟล์อินพุตแรก
--verboseแสดงเอาต์พุต verbose ขณะทำงาน
-v --versionแสดงเวอร์ชัน
generate-webfonts รองรับรูปแบบตัวอักษรต่อไปนี้:
มันสามารถแปลงเป็นและจากรูปแบบใด ๆ ที่ระบุไว้ข้างต้นยกเว้นหนึ่งข้อยกเว้น: มันไม่สามารถแปลง EOT เป็นรูปแบบอื่น ๆ ได้
เครื่องกำเนิดไฟฟ้าใช้ประโยชน์จากห้องสมุด/เครื่องมือของบุคคลที่สามสามตัวสำหรับการแปลงแบบอักษร เนื่องจากไม่มีเครื่องมือเดียวที่รองรับรูปแบบตัวอักษรทั้งหมดงานของเครื่องกำเนิดไฟฟ้าคือการหาห่วงโซ่ที่ดีของตัวแปลงที่จะใช้เพื่อแปลงระหว่างรูปแบบตัวอักษรสองรูปแบบใด ๆ ภายใต้ฝากระโปรงมันถูกนำไปใช้เป็นปัญหาที่สั้นที่สุดในกราฟการพึ่งพา
เครื่องมือของบุคคลที่สามที่ใช้คือ:
Fontforge รองรับการอ่านและสร้างรูปแบบตัวอักษรจำนวนมากแม้ว่าจะไม่สนับสนุนรูปแบบ EOT หรือ WOFF2 ห้องสมุด Sfntly ที่รวดเร็วอย่างรวดเร็วสามารถแปลงฟอนต์ TTF เป็น EOT หรือ WOFF ครอบคลุมช่องว่างเหล่านี้ ตัวแปลง WOFF2 จาก Google ยังใช้ในการแปลงระหว่างรูปแบบ WOFF2 และ TTF
ดังที่ได้กล่าวมาแล้ว Run ./setup เพื่อดาวน์โหลดและสร้างไลบรารีของบุคคลที่สาม การรัน ./setup setup จะตรวจสอบที่เก็บ SFNTLY และ WOFF2 Converter ในพื้นที่ที่ generate-webfonts สามารถค้นหาได้ ติดตั้ง FontForge โดยใช้ Package Manager ของคุณหรือโดยตรงจากเว็บไซต์ของพวกเขา
กระบวนการตั้งค่าถือว่าเป็นสภาพแวดล้อม *nix ขณะนี้ยังไม่มีการสนับสนุนสำหรับการตั้งค่าเครื่องมือนี้บน Windows
จำเป็นต้องใช้คำสั่งต่อไปนี้เพื่อเรียกใช้สคริปต์การตั้งค่า:
gitjava และ javacmvn (Maven) สคริปต์ generate-webfonts นั้นต้องการ Python 3
โปรดแปลงอย่างรับผิดชอบ! เคารพลิขสิทธิ์ของผู้สร้างแบบอักษร