TinyVG thách thức SVG
(zig.news)-
Trong quá trình tạo thư viện SVG cho ngôn ngữ Zig, tác giả đã đi đến việc tạo ra một định dạng vector riêng
-
Hiện nay, trong đồ họa vector thì phần lớn đều đang dùng SVG
→ Nhưng việc hiện thực một thư viện SVG mới là rất khó
⇨ Vì nó được xây dựng trên các nền tảng như XML/CSS/ECMAScript
⇨ Ngoài ra bản thân SVG cũng quá phức tạp, nên hình ảnh hiển thị khác nhau giữa từng trình hiện thực
→ Đặc biệt khi có chứa thì kết quả còn khác nhau tùy hệ thống
⇨ Vì vậy hiện nay thường dùng mẹo chuyển toàn bộ Text thành Path
- TinyVG có 95% các tính năng thực sự cần thiết của SVG
→ Loại bỏ các phần như animation, scripting, tài nguyên bên ngoài, cấu trúc tài liệu phân cấp
- Mục tiêu thiết kế
→ Mã hóa nhị phân gọn nhẹ (nhỏ hơn SVG)
→ Có thể hỗ trợ nhiều nền tảng: GPU (Game), CPU (ứng dụng desktop), Web, Embedded
→ Là tập con của SVG
→ Có thể dùng cho nhiều mục đích: biểu tượng ứng dụng/thanh công cụ, đồ thị và sơ đồ, truyện tranh/tranh vẽ, v.v.
→ Hiện thực đơn giản
- SVG được tối ưu hóa có thể đạt kích thước bằng 40%
3 bình luận
Hmm, dù vậy tôi vẫn mong đó là mã hóa dạng văn bản.
Cũng có ThorVG được dùng trong Tizen nữa (chắc từ viết tắt sẽ bị trùng rồi nhỉ haha;)
https://github.com/Samsung/thorvg
Nhưng trớ trêu là ngay cả trang chính https://tinyvg.tech/ hiện cũng đang bị sập.
Việc SVG phức tạp là điều đã được biết đến rộng rãi, và cũng đã có nhiều lựa chọn thay thế khác nhau xuất hiện.
IconVG của Google https://github.com/google/iconvg
Lottie, đồ họa vector dành cho hoạt ảnh http://airbnb.io/lottie/