Expand description
Drawing logic shared across RavenRS. It depends on no engine, so reports, the UI and any later module draw the same charts and the same barcodes.
vectorholds shapes that PDF and SVG can write as they are, and a rasterizer for the outputs that need pictures.chartlays numbers out as shapes and labels.plotlays them out the way dashboards show them, in a richer picture that says what is under the pointer.sankeylays a graph of flows out as nodes and ribbons, or says why it cannot.barcodeturns text into the modules a scanner reads.
Modules§
- barcode
- Barcodes: turns text into the modules a scanner reads. Pure logic, so every output draws the same code and it can be tested without drawing.
- chart
- Chart layout: turns aggregated numbers into shapes and labels. Pure logic, kept apart from the engine so it can be tested without rendering a report.
- plot
- The charts of a dashboard: the same numbers as
crate::chart, laid out for a screen. Besides what to draw, it says where each thing landed, so that whoever shows it can tell what is under the pointer without asking for another picture. - sankey
- The layout of a sankey diagram: where each node goes and the ribbon of each flow, from a graph that must not go in circles. Pure logic, in the coordinates asked for.
- vector
- Vector shapes: curves and polygons that PDF and SVG write as they are, and that the screen and spreadsheets get as a picture.