  Stroking and filling are the two basic rendering operations on paths in
vector graphics. The theory of filling a path is well-understood in terms of
contour integrals and winding numbers, but when path rendering standards
specify stroking, they resort to the analogy of painting pixels with a brush
that traces the outline of the path. This means important standards such as
PDF, SVG, and PostScript lack a rigorous way to say what samples are inside or
outside a stroked path. Our work fills this gap with a principled theory of
stroking.
  Guided by our theory, we develop a novel polar stroking method to render
stroked paths robustly with an intuitive way to bound the tessellation error
without needing recursion. Because polar stroking guarantees small uniform
steps in tangent angle, it provides an efficient way to accumulate arc length
along a path for texturing or dashing. While this paper focuses on developing
the theory of our polar stroking method, we have successfully implemented our
methods on modern programmable GPUs.
