การใช้ฟอนต์. otf บนเว็บเบราว์เซอร์


440

ฉันกำลังทำงานบนเว็บไซต์ที่ต้องใช้การทดสอบแบบอักษรออนไลน์แบบอักษรทั้งหมดที่ฉันมีคือ. otf

มีวิธีฝังแบบอักษรและทำให้พวกเขาทำงานกับเบราว์เซอร์ทั้งหมดหรือไม่

ถ้าไม่มีฉันมีทางเลือกอื่นอีกบ้าง?


1
อาจจะลบจาวาสคริปต์ออกจากรายการแท็กที่นี่หรือ
kzh

คำตอบ:


754

คุณสามารถใช้OTFแบบอักษรโดยใช้ @ font-face เช่น:

@font-face {
    font-family: GraublauWeb;
    src: url("path/GraublauWeb.otf") format("opentype");
}

@font-face {
    font-family: GraublauWeb;
    font-weight: bold;
    src: url("path/GraublauWebBold.otf") format("opentype");
}

อย่างไรก็ตามหากคุณต้องการรองรับเบราว์เซอร์สมัยใหม่ที่หลากหลายฉันขอแนะนำให้คุณเปลี่ยนไปใช้WOFFและTTFประเภทของตัวอักษร WOFFประเภทถูกนำไปใช้โดยเบราว์เซอร์เดสก์ท็อปหลัก ๆ ทุกTTFประเภทในขณะที่ประเภทนั้นเป็นทางเลือกสำหรับเบราว์เซอร์ Safari, Android และ iOS รุ่นเก่า หากแบบอักษรของคุณเป็นแบบอักษรฟรีคุณสามารถแปลงแบบอักษรของคุณโดยใช้ตัวอย่างเช่นตัวแปลงออนไลน์

@font-face {
    font-family: GraublauWeb;
    src: url("path/GraublauWebBold.woff") format("woff"), url("path/GraublauWebBold.ttf")  format("truetype");
}

หากคุณต้องการสนับสนุนเกือบทุกเบราว์เซอร์ที่ยังคงอยู่ที่นั่น (ไม่จำเป็นอีกต่อไป IMHO) คุณควรเพิ่มประเภทตัวอักษรเพิ่มเติมเช่น:

@font-face {
    font-family: GraublauWeb;
    src: url("webfont.eot"); /* IE9 Compat Modes */
    src: url("webfont.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
         url("webfont.woff") format("woff"), /* Modern Browsers */
         url("webfont.ttf")  format("truetype"), /* Safari, Android, iOS */
         url("webfont.svg#svgFontName") format("svg"); /* Legacy iOS */
}

คุณสามารถอ่านเพิ่มเติมเกี่ยวกับสาเหตุที่ทุกประเภทเหล่านี้จะดำเนินการและแฮ็กของพวกเขาที่นี่ ในการรับมุมมองแบบละเอียดว่าประเภทไฟล์ใดบ้างที่เบราว์เซอร์รองรับให้ดู:

การสนับสนุนเบราว์เซอร์ @ font-face

รองรับเบราว์เซอร์ EOT

สนับสนุนเบราว์เซอร์ WOFF

รองรับเบราว์เซอร์ TTF

การสนับสนุนเบราว์เซอร์ SVG-Fonts

หวังว่านี่จะช่วยได้


1
มันทำงานได้อย่างสมบูรณ์แบบบนเบราว์เซอร์เกือบทั้งหมด ... เบราว์เซอร์เดียวที่ไม่สามารถใช้งานได้คือ FireFox Linux ... ข้อเสนอแนะใด ๆ
นารูโตะ

3
โปรดทราบว่าหากคุณโฮสต์ไฟล์นี้ไว้บนเซิร์ฟเวอร์ Windows คุณต้องเพิ่มไฟล์. otf เป็นประเภทไฟล์ที่ถูกต้องและแสดงผล วิธีเดียวที่จะเห็นว่านี่คือปัญหาคือไปตามลิงก์ไปยังตัวอักษร (ข้อผิดพลาด 404 ถ้าเป็นเช่นนั้น) คุณสามารถเปลี่ยนชื่อชั่วคราวเป็น. ttf หรือ. html สำหรับการทดสอบ เว็บฟอนต์เดียวที่รองรับโดย IE คือรูปแบบ WOFF (ไม่ไม่เคยได้ยินเลย!)
Henrik Erlandsson

เฮ้การแสดงของตัวอักษรประเภทนี้เป็นอย่างไร ดีไหม หรืออื่น ๆ ดีกว่า
Anggie Aziz

ไม่มีเครื่องหมายคำพูด ( ") ในตัวอย่างของรหัสหรือไม่
steffen

2
ดูเหมือนว่า otf ควรทำงานเกือบทั่วกระดานทันที caniuse.com/#search=otf
Stephen

49

จากตัวอย่างไดเรกทอรี Google Font :

@font-face {
  font-family: 'Tangerine';
  font-style: normal;
  font-weight: normal;
  src: local('Tangerine'), url('http://example.com/tangerine.ttf') format('truetype');
}
body {
  font-family: 'Tangerine', serif;
  font-size: 48px;
}

มันทำงานข้ามเบราว์เซอร์ด้วย. ttf ฉันเชื่อว่ามันอาจทำงานกับ. otf ( Wikipediaบอกว่า. otf ส่วนใหญ่ใช้งานได้กับ. ttf ย้อนหลัง) หากไม่ใช่คุณสามารถแปลง. otf เป็น. ttf

นี่คือบางเว็บไซต์ที่ดี:

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.