TinyVG ผู้ท้าชิงบัลลังก์ของ SVG
(zig.news)<p>- ระหว่างสร้างไลบรารี SVG สำหรับภาษา Zig กลับกลายเป็นต้องสร้างฟอร์แมตเวกเตอร์ของตัวเองขึ้นมา<br />
- ปัจจุบันในงานกราฟิกเวกเตอร์ ส่วนใหญ่ยังคงใช้ SVG<br />
→ แต่การพัฒนาไลบรารี SVG ตัวใหม่ทำได้ยาก<br />
⇨ เพราะมันถูกสร้างขึ้นบนพื้นฐานของ XML/CSS/ECMAScript เป็นต้น <br />
⇨ อีกทั้งตัว SVG เองก็ซับซ้อนเกินไป ทำให้ภาพเดียวกันอาจแสดงผลต่างกันไปตามแต่ละ implementation<br />
→ โดยเฉพาะเมื่อมี <code><text></code> รวมอยู่ด้วย จะแตกต่างกันไปตามระบบ <br />
⇨ ดังนั้นทุกวันนี้จึงมักใช้วิธีเลี่ยงปัญหาโดยแปลงข้อความทั้งหมดเป็น Path <br />
- TinyVG มีฟีเจอร์ 95% ที่จำเป็นจริง ๆ จาก SVG<br />
→ ตัดเรื่องแอนิเมชัน, สคริปต์, รีซอร์สภายนอก, โครงสร้างเอกสารแบบลำดับชั้น ออกไป <br />
- เป้าหมายการออกแบบ <br />
→ การเข้ารหัสแบบไบนารีที่กะทัดรัด (เล็กกว่า SVG)<br />
→ รองรับได้หลายแพลตฟอร์ม: GPU (Game), CPU (แอปเดสก์ท็อป), Web, Embedded <br />
→ เป็น subset ของ SVG <br />
→ ใช้งานได้หลากหลาย: ไอคอนแอป/ทูลบาร์, กราฟและไดอะแกรม, การ์ตูน/ภาพวาด เป็นต้น<br />
→ implementation ที่เรียบง่าย<br />
- SVG ที่ปรับแต่งอย่างเหมาะสมแล้วสามารถลดขนาดลงได้ถึง 40% </p>
3 ความคิดเห็น