code: func (dc *Context) QuadraticTo(x1, y1, x2, y2 float64) {
  	if !dc.hasCurrent {
  		dc.MoveTo(x1, y1)
  	}
  	x1, y1 = dc.TransformPoint(x1, y1)
  	x2, y2 = dc.TransformPoint(x2, y2)
  	p1 := Point{x1, y1}
  	p2 := Point{x2, y2}
  	dc.strokePath.Add2(p1.Fixed(), p2.Fixed())
  	dc.fillPath.Add2(p1.Fixed(), p2.Fixed())
  	dc.current = p2
  }
docs: // QuadraticTo adds a quadratic bezier curve to the current path starting at
  // the current point. If there is no current point, it first performs
  // MoveTo(x1, y1)