dickwu / gotrace

Pure Go implementation of Potrace vectorization library

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GoTrace

Pure Go implementation of Potrace vectorization library. Supports simple SVG output generation.

Original image

Original

Vectorized image

Vectorized

Installation

go get github.com/dennwc/gotrace

Usage

Process image, generate SVG:

paths, _ := gotrace.Trace(img, nil)
gotrace.WriteSvg(file, img.Bounds(), paths, "")

Custom threshold function:

params := gotrace.Defaults()
params.ThresholdFunc = func(c color.Color) bool {
  r,g,b,_ := c.RGBA()
  return r+g+b > 128
}
paths, _ := gotrace.Trace(img, params)

About

Pure Go implementation of Potrace vectorization library


Languages

Language:C 57.4%Language:Go 41.1%Language:C++ 1.6%