Awesome Go

go-cairo

CategoryImages
SubcategoryImages
Stars0

Go binding for the cairo graphics library

About go-cairo

go-cairo

Go binding for the cairo graphics library

Based on Dethe Elza's version https://bitbucket.org/dethe/gocairo but significantly extended and updated.

Go specific extensions:

  • NewSurfaceFromImage(image.Image)
  • Surface.GetData() []byte
  • Surface.SetData([]byte)
  • Surface.GetImage() image.Image
  • Surface.SetImage(image.Image)

go-cairo also sports a sub package extimage with image.Image/draw.Image implementations for 32 bit ARGB and 24 bit RGB color models.

Overview:

Missing features

  • TextCluster
  • FontExtents
  • FontFace
  • FontOptions
  • ScaledFont
  • Glyph

Installation:

Install cairo:

For Debian and Debian derivatives including Ubuntu:

sudo apt-get install libcairo2-dev

For Fedora:

sudo yum install cairo-devel

For openSUSE:

zypper install cairo-devel

For Arch Linux: (also gcc and pkgconf are required)

sudo pacman -S cairo

For MacOS you may get errors finding cairo-pdf.h. To fix this run:

xcode-select --install

Install go-cairo and run go-cairo-example:

go get github.com/ungerik/go-cairo
go install github.com/ungerik/go-cairo/go-cairo-example && go-cairo-example

Copyrights: See LICENSE file

Bitdeli Badge

Frequently Asked Questions

What is go-cairo?

go-cairo is a Images library for the Go programming language. Go binding for the cairo graphics library

How do I install go-cairo?

Install go-cairo with the Go module system using `go get ungerik/go-cairo`. Check the repository for the current installation instructions.

What category does go-cairo belong to?

go-cairo is listed under Images, specifically Images.

← Back to Images