4 releases (2 breaking)
0.3.1 | Mar 11, 2023 |
---|---|
0.3.0 | Aug 3, 2021 |
0.2.0 | Feb 17, 2021 |
0.1.0 | Mar 17, 2018 |
#71 in Data formats
122 downloads per month
Used in 10 crates
(9 directly)
400KB
6K
SLoC
flo_canvas = "0.3"
flo_canvas
flo_canvas
is a library that provides a way to describe 2D drawings, without providing any
concrete implementation of how those drawings should be rendered. It supports streaming updates
to allow canvases to be displayed in any user interface library that understands the Draw
instructions, and it provides a serialization and deserialization mechanism for sending canvas
instructions to other applications.
This library was designed to support FlowBetween, an interactive animation editor. However,
it has several implementations that make it useful outside that context. In particular, the
flo_draw
crate provides a straightforward way to render canvases into a window. flo_render
and flo_render_canvas
combine to provide a general-purpose way of rendering 2D canvases using
modern 3D-accellerated graphics hardware: this includes the ability to render canvases
off-screen to a bitmap on Linux, OS X and Windows systems.
FlowBetween itself has some implementations that are not quite so accessible but may still be
of interest. In particular canvas.js
provides an implementation of flo_canvas
in javascript,
suitable for rendering to a HTML canvas.
Dependencies
~3.5–7MB
~118K SLoC