GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing tinyvg.tech — TinyVG Vector Graphics An alternative binary encoded vector graphics format. Why another format?SVG is a horribly complex format and an overkill for most projects. The specification includes way too many edge cases so implementing a new SVG renderer will always have drawbacks or missing pieces. TinyVG tries to be simpler. Fewer features, but powerful enough to cover 90% of use cases. Features
DemoThe tiger is rendered with the current implementation of the TinyVG renderer:
The original SVG is 96,719 bytes large, while the optimized one is 85,806 bytes large. When converted to TinyVG, the file shrinks to 27,522 bytes. This means we only have 32% size of the optimized source data. Real World DataTinyVG is benchmarked against a huge set of test images from MaterialDesign, Papirus, W3C, Zig and freesvg.org A short summary is that TVG is typically between 20% and 50% of the equivalent SVG file in size and way easier to parse or render. ResourcesSpecificationThe specification is a human-readable, informal description of the format. It should enable programmers to create new TinyVG implementations. There is also a textual representation that is described roughly in this document: Example DataHere you can download some TinyVG files to inspect or toy around with:
ToolingThe tools provide a TinyVG renderer as well as a text format converter for TinyVG text and SVG.
Native LibraryThe native library is suitable for integrating TinyVG into native projects. Be it Zig, Rust, C or C++, you can use this library with any language that supports the C ABI. This also includes dotnet via P/Invoke and Java via JNI. Right now, only a C API is provided, wrapping to other languages must be done manually at this time. The library provides means to render TinyVG to bitmaps and SVG (text). PolyfillThere's also a polyfill available that allows you to use TinyVG in the browser: ContributionThe main development work is done at GitHub, but feel free to send a email to [email protected]. There also is a Discord Community for a more casual and quick interaction, you can also get help there! |
| You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |