Open jwiggins opened 3 years ago
The PDF, PS, and SVG backends have no
CompiledPath
All the backends that inherit from basecore2d
can use the Agg CompiledPath
implementation, but they don't expose it in the module API:
https://github.com/enthought/enable/blob/dae67fea0b6729cf43841c1e45bcda62ea463739/kiva/basecore2d.py#L704-L743
I'm pretty averse to creating new dependencies on the Agg backend. We should consider a different way.
This isn't new, just noting that there is a default implementation.
I agree thought: I'd really like a pure python implementation of CompiledPath, together with a proper definition of the expected interface.
Since
AbstractGraphicsContext
is the published and documented interface for kiva backends, we should make sure that all current backends actually use that interface.select_font
is not consistently implemented [closed by #691]CompiledPath
. PDF could have one (not sure about the others)draw_marker_at_points
[details in #708]arc
takes a keyword argumentcw
, notclockwise
as it's called in several backends (celiagg, qpainter)set_flatness
is mostly not implemented. (only Cairo has it)set_image_interpolation
is mostly not implemented (onlykiva.agg
has it)set_text_drawing_mode
is mostly not implemented*_character_spacing
is not widely implementedarc
,arc_to
,quad_curve_to
,curve_to
. (partial fixes in #970 and #988, see also #960, #961, #962, #985)