TinyVG ผู้ท้าชิงบัลลังก์ของ SVG
(zig.news)-
ระหว่างสร้างไลบรารี SVG สำหรับภาษา Zig กลับกลายเป็นต้องสร้างฟอร์แมตเวกเตอร์ของตัวเองขึ้นมา
-
ปัจจุบันในงานกราฟิกเวกเตอร์ ส่วนใหญ่ยังคงใช้ SVG
→ แต่การพัฒนาไลบรารี SVG ตัวใหม่ทำได้ยาก
⇨ เพราะมันถูกสร้างขึ้นบนพื้นฐานของ XML/CSS/ECMAScript เป็นต้น
⇨ อีกทั้งตัว SVG เองก็ซับซ้อนเกินไป ทำให้ภาพเดียวกันอาจแสดงผลต่างกันไปตามแต่ละ implementation
→ โดยเฉพาะเมื่อมี รวมอยู่ด้วย จะแตกต่างกันไปตามระบบ
⇨ ดังนั้นทุกวันนี้จึงมักใช้วิธีเลี่ยงปัญหาโดยแปลงข้อความทั้งหมดเป็น Path
- TinyVG มีฟีเจอร์ 95% ที่จำเป็นจริง ๆ จาก SVG
→ ตัดเรื่องแอนิเมชัน, สคริปต์, รีซอร์สภายนอก, โครงสร้างเอกสารแบบลำดับชั้น ออกไป
- เป้าหมายการออกแบบ
→ การเข้ารหัสแบบไบนารีที่กะทัดรัด (เล็กกว่า SVG)
→ รองรับได้หลายแพลตฟอร์ม: GPU (Game), CPU (แอปเดสก์ท็อป), Web, Embedded
→ เป็น subset ของ SVG
→ ใช้งานได้หลากหลาย: ไอคอนแอป/ทูลบาร์, กราฟและไดอะแกรม, การ์ตูน/ภาพวาด เป็นต้น
→ implementation ที่เรียบง่าย
- SVG ที่ปรับแต่งอย่างเหมาะสมแล้วสามารถลดขนาดลงได้ถึง 40%
3 ความคิดเห็น
อืม ถึงอย่างนั้นผมก็ยังอยากให้เป็นการเข้ารหัสแบบข้อความอยู่นะครับ
ยังมี ThorVG ที่ใช้ใน Tizen ด้วยครับ (ตัวย่อคงจะซ้ำกันสินะ 555;)
https://github.com/Samsung/thorvg
แต่เว็บไซต์หลักอย่าง https://tinyvg.tech/ กลับล่มอยู่พอดีครับ
เป็นที่รู้กันทั่วไปอยู่แล้วว่า SVG มีความซับซ้อน และก็มีทางเลือกหลายแบบออกมาเช่นกัน
IconVG ของ Google https://github.com/google/iconvg
Lottie เวกเตอร์กราฟิกสำหรับงานแอนิเมชัน http://airbnb.io/lottie/