package main import ( "net/http" "github.com/wcharczuk/go-chart" "github.com/wcharczuk/go-chart/drawing" ) func drawChart(res http.ResponseWriter, req *http.Request) { f, _ := chart.GetDefaultFont() r, _ := chart.PNG(1024, 1024) chart.Draw.Text(r, "Test", 64, 64, chart.Style{ FontColor: drawing.ColorBlack, FontSize: 18, Font: f, }) chart.Draw.Text(r, "Test", 64, 64, chart.Style{ FontColor: drawing.ColorBlack, FontSize: 18, Font: f, TextRotationDegrees: 45.0, }) tb := chart.Draw.MeasureText(r, "Test", chart.Style{ FontColor: drawing.ColorBlack, FontSize: 18, Font: f, }).Shift(64, 64) tbc := tb.Corners().Rotate(45) chart.Draw.BoxCorners(r, tbc, chart.Style{ StrokeColor: drawing.ColorRed, StrokeWidth: 2, }) tbcb := tbc.Box() chart.Draw.Box(r, tbcb, chart.Style{ StrokeColor: drawing.ColorBlue, StrokeWidth: 2, }) res.Header().Set("Content-Type", "image/png") r.Save(res) } func main() { http.HandleFunc("/", drawChart) http.ListenAndServe(":8080", nil) }