แปลงไฟล์ฟอนต์ .otf ให้เป็น .woff2 ฟรี

การแปลงไฟล์ฟอนต์จาก .otf (OpenType) ไปเป็น .woff2 กลายเป็นงานพื้นฐานสำหรับนักพัฒนาเว็บและนักการตลาดสาย SEO เพราะ .woff2 ให้ขนาดไฟล์เล็ก โหลดเร็ว และรองรับเบราว์เซอร์สมัยใหม่ได้ดีเยี่ยม บทความนี้สรุปทุกอย่างที่คุณต้องรู้ พร้อมขั้นตอนละเอียด คำศัพท์สำคัญ และทริกเพิ่มคะแนน Core Web Vitals

OTF → WOFF2 Converter

ลากไฟล์ .otf / .ttf มาวาง หรือกดเลือกไฟล์ (สูงสุด 20 ไฟล์ต่อครั้ง) เราจะแปลงเป็น .woff2 ภายในเบราว์เซอร์ของคุณ

ลากไฟล์มาวางที่นี่ หรือ
รองรับ .otf / .ttf
ประมวลผลในเครื่องคุณ (WASM WOFF2) — เหมาะกับ @font-face บนเว็บ

ทำไมต้องแปลง .otf เป็น .woff2

ประสิทธิภาพคืออันดับหนึ่ง

  • ขนาดไฟล์เล็กลง: WOFF2 ใช้การบีบอัดขั้นสูง ช่วยลดขนาดเมื่อเทียบกับ OTF/TTF อย่างเห็นได้ชัด

  • โหลดเร็วขึ้น: ยิ่งไฟล์เล็ก เวลา First Contentful Paint (FCP) และ Largest Contentful Paint (LCP) ก็ดีขึ้น

  • ประหยัดแบนด์วิดท์: เหมาะกับผู้ใช้มือถือและเครือข่ายช้า

พร้อมใช้บนเว็บแบบ “เว็บเป็นที่หนึ่ง”

  • รองรับ @font-face บน CSS ได้ตรงๆ

  • จัดการคอนฟิกแคช และ preload ได้ง่าย ช่วยให้หน้าเสถียรขึ้น

เข้าใจความต่างของฟอร์แมตฟอนต์ (SEO-friendly)

.otf คืออะไร

  • ฟอร์แมตสำหรับงานพิมพ์/ดีไซน์ คุณภาพสูง รายละเอียดตัวอักษรครบ

  • ไม่ได้ถูกออกแบบให้เหมาะกับเว็บโดยตรงในเชิงประสิทธิภาพ

.woff และ .woff2 ต่างกันอย่างไร

  • .woff: มาตรฐานเว็บฟอนต์ยุคแรก บีบอัดดีพอใช้

  • .woff2: เวอร์ชันใหม่กว่า บีบอัดดีกว่า ประหยัดกว่า เหมาะสุดสำหรับโปรดักชัน

สรุป: ถ้าจุดหมายคือเว็บไว โหลดเร็ว และคะแนน SEO ดี—เลือก .woff2

วิธีแปลง .otf เป็น .woff2 ฟรี (หลายทางเลือก)

ตัวเลือกที่ 1: เว็บเครื่องมือออนไลน์ (ไม่ต้องติดตั้ง)

  • เหมาะเมื่อคุณต้องการแปลงไวๆ หรือไม่มีสิทธิ์ติดตั้งโปรแกรม

  • ข้อดี: ใช้งานง่าย แค่ลากวางก็ได้ไฟล์

  • ข้อควรระวัง: ความเป็นส่วนตัวของฟอนต์เชิงพาณิชย์—อ่านเงื่อนไขก่อนอัปโหลด

ตัวเลือกที่ 2: เครื่องมือออฟไลน์ (บนคอมของคุณ)

  • เหมาะกับงานที่ต้องการ ความปลอดภัย/ออฟไลน์

  • ใช้เครื่องมือ CLI หรือแอปเดสก์ท็อปเพื่อแปลงจำนวนมาก (batch) ได้สะดวก

ตัวเลือกที่ 3: คำสั่งบรรทัด (CLI) สำหรับสาย DevOps

  • เหมาะกับทีมที่ต้องการอัตโนมัติ: build script, CI/CD

  • ทำซ้ำได้, ควบคุมเวอร์ชันได้, รวมกับขั้นตอน minify/optimize อื่นๆ

เช็กลิสต์เตรียมไฟล์ก่อนแปลง

  • ตรวจสอบ สิทธิ์การใช้งานฟอนต์: อนุญาตให้ใช้บนเว็บหรือไม่

  • รวม glyph ที่จำเป็น: ภาษาไทย/อังกฤษ/ตัวเลข/สัญลักษณ์

  • กำหนด subset (ถ้าทำได้): ตัดตัวอักษรที่ไม่ใช้เพื่อลดขนาด

  • ตั้งชื่อไฟล์ให้ อ่านง่าย + สื่อความหมาย: เช่น Brand-Thai-Regular.woff2

ขั้นตอนแปลง .otf เป็น .woff2 แบบละเอียด (ทีละข้อ)

  1. รวมไฟล์ .otf ที่ต้องการลงในโฟลเดอร์โปรเจกต์ (เช่น /fonts/src/)

  2. เลือกวิธีแปลง

    • ออนไลน์: เปิดเว็บเครื่องมือแปลง > อัปโหลด .otf > เลือกผลลัพธ์ .woff2

    • ออฟไลน์/CLI: ติดตั้งเครื่องมือที่รองรับการแปลง > รันคำสั่ง

  3. ตั้งค่าสับเซต (Subset)

    • เลือกเฉพาะ latin, thai, punctuation ฯลฯ เพื่อลดขนาด

  4. กำหนดน้ำหนักและสไตล์

    • แยกไฟล์ตามน้ำหนัก: Regular(400), Medium(500), Bold(700)

  5. แปลงไฟล์

    • ได้ไฟล์ .woff2 เก็บไว้ที่ /fonts/dist/

  6. อัปเดต CSS ให้โหลดฟอนต์จากไฟล์ใหม่

  7. ทดสอบหน้าเว็บ บนหลายเบราว์เซอร์/อุปกรณ์

  8. วัดผล ด้วย Lighthouse/Core Web Vitals

  9. ตั้งค่าแคช ที่ CDN/Server เพื่อประสิทธิภาพสูงสุด

  10. สำรอง/ติดตามเวอร์ชัน ใน Git สำหรับทีม

ตัวอย่างโค้ด CSS เพื่อนำ .woff2 ไปใช้จริง

/* แนะนำให้ใช้ font-display: swap เพื่อไม่ให้ตัวหนังสือหายระหว่างโหลด */
@font-face {
font-family: "Brand Thai";
src: url("/fonts/Brand-Thai-Regular.woff2") format("woff2");
font-weight: 400;
font-style: normal;
font-display: swap;
}

@font-face {
font-family: "Brand Thai";
src: url("/fonts/Brand-Thai-Bold.woff2") format("woff2");
font-weight: 700;
font-style: normal;
font-display: swap;
}

/* การใช้งาน */
body {
font-family: "Brand Thai", system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans Thai", sans-serif;
}

ทดสอบและตรวจสอบคุณภาพหลังแปลง

สิ่งที่ควรเช็ก

  • เรนเดอร์ภาษาไทยครบ: ไม้เอก ไม้โท สระบน/ล่างไม่ลอย

  • ฟอนต์สลับ (Fallback) ทำงาน: หากโหลดไม่ทัน ให้แสดง system font แทน

  • Performance: เวลาโหลดฟอนต์ลดลงหรือไม่, LCP/CLS ดีขึ้นแค่ไหน

Hints ระดับ H4: วิธี Preload ฟอนต์ให้เร็วขึ้น

  • ใส่ใน <head>:

    <link rel="preload" href="/fonts/Brand-Thai-Regular.woff2" as="font" type="font/woff2" crossorigin>
  • ใช้ crossorigin เมื่อไฟล์อยู่คนละโดเมนหรือมี CDN

H5: ขนาดไฟล์เป้าหมาย (แนวทาง)

  • ฟอนต์ไทย subset ดีๆ สำหรับน้ำหนักเดียว สามารถต่ำกว่า ~150–300 KB

  • ถ้าเกินมาก ลองตัด subset เพิ่มหรือดูว่ามี glyph ซ้ำซ้อน

เคล็ดลับ SEO + Core Web Vitals สำหรับเว็บฟอนต์

  • ใช้ .woff2 เป็นค่าเริ่มต้น และเสริม .woff เฉพาะกรณีจำเป็น

  • font-display: swap ช่วยลด FOIT (Flash of Invisible Text)

  • ลดจำนวนน้ำหนักฟอนต์ ให้เหลือเท่าที่ใช้จริง (เช่น 400, 700)

  • ทำ Subset ภาษา: แยก latin กับ thai เพื่อลด payload

  • ตั้ง Cache-Control ยาวๆ (เช่น 1 ปี) สำหรับไฟล์ fingerprinted เช่น Brand-Thai-Regular.abc123.woff2

  • วัดผลซ้ำ หลังปรับทุกครั้งด้วย PageSpeed Insights / Lighthouse

คำถามพบบ่อย (FAQ) เกี่ยวกับการแปลง .otf → .woff2

Q1: ต้องเก็บ .otf ไว้ในโปรเจกต์ไหม?

A: ในเว็บโปรดักชันไม่จำเป็น ให้เสิร์ฟเฉพาะ .woff2 (และสำรอง .woff ถ้าต้องรองรับเบราว์เซอร์เก่าบางตัว) ส่วนไฟล์ต้นฉบับเก็บไว้ในที่ปลอดภัยสำหรับงานออกแบบ/อัปเดต

Q2: การแปลงกระทบลิขสิทธิ์หรือเปล่า?

A: ฟอร์แมตเปลี่ยนไม่ทำให้สิทธิ์การใช้งานเปลี่ยน ตรวจสอบ EULA ของฟอนต์เสมอว่ารองรับการใช้งานบนเว็บ/การแปลง

Q3: ทำไมแปลงแล้วตัวหนังสือเพี้ยน?

A: อาจเกิดจากการ subset เกินจำเป็นหรือมีการ map glyph ไม่ครบ ลองแปลงใหม่โดยไม่ตัดตัวอักษร หรือทดสอบชุดภาษาไทยเต็ม

Q4: ทำอย่างไรให้ฟอนต์โหลดไวที่สุด?

A: รวม 4 ข้อนี้: ใช้ .woff2 + preload + font-display: swap + ตั้ง HTTP caching ให้เหมาะสม

สรุป (Call to Action)

การแปลง .otf → .woff2 คือก้าวสำคัญสู่เว็บที่ เร็วกว่า เบากว่า และเป็นมิตรต่อ SEO เริ่มได้ทันทีด้วยวิธีออนไลน์หรือออฟไลน์ ตั้งค่า @font-face, font-display: swap, และ preload ให้ครบ จากนั้นตรวจ Core Web Vitals ซ้ำจนได้ประสิทธิภาพที่ต้องการ หากคุณกำลังปรับแต่งเว็บภาษาไทยเป็นหลัก อย่าลืม subset ภาษาไทย เพื่อบีบไฟล์ให้เล็กที่สุด—เว็บคุณจะโหลดฉิว จัดอันดับได้ดี และผู้ใช้ก็ประทับใจกับประสบการณ์ที่ลื่นไหล

ลงมือวันนี้: เลือกฟอนต์หลักของแบรนด์คุณ แปลงเป็น .woff2 ทุกน้ำหนักที่ใช้จริง อัปเดต CSS และวัดผล—คุณจะเห็นความต่างทันที!