svg's attribute fill-rule supports two values: 'evenodd' and 'nonzero'. now for canvas, too.