gg
官方倉庫:fogleman/gg: Go Graphics - 2D rendering in Go with a simple API. (github.com)
官方文檔:gg package - github.com/fogleman/gg - Go Packages
官方示例:gg/examples at master · fogleman/gg (github.com)
gg是一個比較老牌的二維的圖形渲染引擎,適合用於生成圖片。
安裝
go get -u github.com/fogleman/gg快速開始
go
package main
import "github.com/fogleman/gg"
func main() {
dc := gg.NewContext(1000, 1000) //創建畫布 高1000 寬1000
dc.DrawCircle(500, 500, 400) // 在 (500,500)坐標位置繪制一個半徑400的圓
dc.SetRGB(0, 0, 0) // 設置顏色黑色
dc.Fill() // 填充
dc.SavePNG("out.png") // 保存到圖片文件
}描點

go
func TestDot(t *testing.T) {
dc := gg.NewContext(1000, 1000)
dc.SetRGB(0, 0, 0)
for i := 1; i < 10; i++ {
dc.DrawPoint(float64(50*i), float64(50*i), 5) // 設置點的坐標和半徑
}
dc.Fill() // 填充
dc.SavePNG("out.png")
}畫線

go
func TestLines(t *testing.T) {
dc := gg.NewContext(1000, 1000)
dc.SetRGB(0, 0, 0)
dc.SetLineWidth(5) // 設置線寬
dc.DrawLine(1000, 0, 0, 1000)
dc.DrawLine(1000, 1000, 0, 0)
dc.Stroke() // 連線
dc.SavePNG("lines.png")
}