Package Usage: go: github.com/llgcode/draw2d
Package draw2d is a pure go 2D vector graphics library with support
for multiple output devices such as images (draw2d), pdf documents
(draw2dpdf) and opengl (draw2dgl), which can also be used on the
google app engine. It can be used as a pure go Cairo alternative.
draw2d is released under the BSD license.
Operations in draw2d include stroking and filling polygons, arcs,
Bézier curves, drawing images and text rendering with truetype fonts.
All drawing operations can be transformed by affine transformations
(scale, rotation, translation).
Package draw2d follows the conventions of http://www.w3.org/TR/2dcontext for coordinate system, angles, etc...
To install or update the package draw2d on your system, run:
Package draw2d itself provides a graphic context that can draw vector
graphics and text on an image canvas. The following Go code
generates a simple drawing and saves it to an image file:
There are more examples here:
https://github.com/llgcode/draw2d/tree/master/samples
Drawing on pdf documents is provided by the draw2dpdf package.
Drawing on opengl is provided by the draw2dgl package.
See subdirectories at the bottom of this page.
The samples are run as tests from the root package folder `draw2d` by:
Or if you want to run with test coverage:
This will generate output by the different backends in the output folder.
Laurent Le Goff wrote this library, inspired by Postscript and
HTML5 canvas. He implemented the image and opengl backend with the
freetype-go package. Also he created a pure go Postscript
interpreter, which can read postscript images and draw to a draw2d
graphic context (https://github.com/llgcode/ps). Stani Michiels
implemented the pdf backend with the gofpdf package.
- https://github.com/llgcode/ps: Postscript interpreter written in Go
- https://github.com/gonum/plot: drawing plots in Go
- https://github.com/muesli/smartcrop: content aware image cropping
- https://github.com/peterhellberg/karta: drawing Voronoi diagrams
- https://github.com/vdobler/chart: basic charts in Go
7 versions
Latest release: over 1 year ago
230 dependent packages
View more package details: https://packages.ecosystem.code.gouv.fr/registries/proxy.golang.org/packages/github.com/llgcode/draw2d