2006-04-26 14:34:02 -07:00
|
|
|
This is the cairo roadmap.
|
|
|
|
|
|
|
|
|
|
Everything here is subject to change, but it is hoped that all of it
|
|
|
|
|
will be useful. If you want to influence, please feel free to get
|
|
|
|
|
involved with cairo (see http://cairographics.org ).
|
|
|
|
|
|
|
|
|
|
The intent is for this to be a living document. We want both the users
|
|
|
|
|
of cairo, (GTK+, GNOME, Mozilla, Mono, etc. etc.) to let us know
|
|
|
|
|
features they need and dates by which they are needed so that we can
|
|
|
|
|
use those to guide our plans.
|
|
|
|
|
|
|
|
|
|
Additionally, people who are actively developing cairo itself should
|
|
|
|
|
regularly update this document to reflect their current plans. If you
|
|
|
|
|
don't want to see a particular release happen without some essential
|
|
|
|
|
feature, then put that feature on the list and put your name next to
|
|
|
|
|
it to indicate you are working on it.
|
|
|
|
|
|
|
|
|
|
Targets
|
|
|
|
|
=======
|
|
|
|
|
Firefox 3.0 - http://www.mozilla.org/projects/firefox/roadmap.html
|
|
|
|
|
------------------------------------------------------------------
|
|
|
|
|
Firefox 3 (scheduled for early 2007?) is the first release expected to
|
|
|
|
|
use cairo for all rendering. In the meantime, development builds using
|
|
|
|
|
cairo are available
|
|
|
|
|
|
2006-05-08 17:41:17 -07:00
|
|
|
Satisfying firefox 3 well requiring releasing new versions of cairo
|
|
|
|
|
before November 2006 (or earlier) that incorporate the patches coming
|
2006-07-27 00:57:53 -07:00
|
|
|
from mozilla, (clip querying), and much-improved performance.
|
2006-04-26 14:34:02 -07:00
|
|
|
|
|
|
|
|
Themes and Schedules
|
|
|
|
|
====================
|
2006-08-14 00:15:44 -04:00
|
|
|
cairo-1.2.4 (August 21, 2006): Fix build bugs with 1.2.2
|
2006-08-18 17:18:34 -04:00
|
|
|
✓- xlib detection requires libXt
|
2006-08-17 22:10:27 -04:00
|
|
|
✓- SVG backend requires PNG
|
2006-08-17 17:48:40 -07:00
|
|
|
✓- 7888: assertion failure with rotated bitmap glyphs
|
|
|
|
|
✓- 7889: cairo_text_path assertion failure on bitmap fonts
|
2006-08-17 22:12:21 -04:00
|
|
|
✓- Type1 on Windows (Adrian has a patch)
|
2006-08-17 13:47:32 -07:00
|
|
|
✓- source-clip-scale
|
2006-08-18 06:32:43 -07:00
|
|
|
✓- close_path behavior (T Rowley's mail)
|
2006-08-18 07:56:52 -07:00
|
|
|
✓- degenerate-path dashing fixes
|
2006-08-14 00:15:44 -04:00
|
|
|
|
2006-08-18 14:22:08 -07:00
|
|
|
Things that we are letting slip from 1.2.4
|
|
|
|
|
------------------------------------------
|
2006-08-18 14:23:14 -07:00
|
|
|
- 7744: Compile troubles on AIX
|
2006-08-18 14:22:08 -07:00
|
|
|
- PS/PDF Type1/Type3 problem with rotated font_matrices
|
|
|
|
|
|
2006-05-08 17:41:17 -07:00
|
|
|
cairo-1.4 (October 2006): Better performance
|
2006-04-26 14:34:02 -07:00
|
|
|
- New tessellator
|
|
|
|
|
- New rasterization
|
2006-05-08 17:41:17 -07:00
|
|
|
- Finer-grained fallbacks for PS/PDF
|
2006-04-26 14:34:02 -07:00
|
|
|
|
2006-07-27 00:57:53 -07:00
|
|
|
cairo 1.4.0 ideas (think performance!)
|
|
|
|
|
======================================
|
|
|
|
|
Implement framework for performance regression testing
|
|
|
|
|
|
|
|
|
|
Investigate "low-hanging fruit" identified by David Turner (write test case for each)
|
|
|
|
|
|
|
|
|
|
Look into speeding up pixman gradients
|
|
|
|
|
|
|
|
|
|
Look into improving text positioning/placement on ARM (with no hardware floating-point)
|
|
|
|
|
|
|
|
|
|
Look into speeding up dashing used for GTK+ focus rectangle
|
|
|
|
|
|
|
|
|
|
Look into other GTK+ performance regressions as identified on performance-list
|
|
|
|
|
|
|
|
|
|
xlib backend
|
|
|
|
|
Switch to server-side gradients for xlib backend
|
|
|
|
|
Fix X server to make server-side gradients faster
|
|
|
|
|
Switch to using XRenderAddTraps rather than XRenderCompositeTrapezoids
|
|
|
|
|
|
|
|
|
|
Implement a non-trapezoid based rasterizer for use with xlib and other backends
|
|
|
|
|
|
|
|
|
|
Cull geometry outside clip region bounds
|
|
|
|
|
|
|
|
|
|
New tessellator
|
|
|
|
|
|
2006-08-18 15:49:38 -04:00
|
|
|
Look into using alloca instead of malloc when copying glyphs/path/etc to edit
|
|
|
|
|
and use in one function and deallocate upon return.
|
|
|
|
|
|
2006-08-10 13:21:57 -04:00
|
|
|
Look into generating EPS. That may be done using a new constructor for the
|
|
|
|
|
PS backend, or better, using an API similar to
|
|
|
|
|
cairo_svg_surface_restrict_to_version. The PDF backend needs a restrict_to
|
|
|
|
|
API at some point too.
|
|
|
|
|
|
2006-08-14 00:15:44 -04:00
|
|
|
User-font API
|
|
|
|
|
|
2006-08-17 16:11:58 -07:00
|
|
|
Bugs to fix
|
|
|
|
|
-----------
|
|
|
|
|
CAIRO_EXTEND_PAD is not implemented for surface patterns
|
|
|
|
|
CAIRO_FORMAT_RGB16_565 should be deprecated
|
|
|
|
|
|
2006-07-27 00:57:53 -07:00
|
|
|
Unscheduled stuff we'd like to get to at some point
|
|
|
|
|
===================================================
|
|
|
|
|
Fairly severe bugs
|
2006-06-25 02:25:16 +02:00
|
|
|
6806 cairo 1.0.4 crash progressbar in window
|
|
|
|
|
PDF: minefield shows too-tiny bitmapped fonts in image fallback
|
|
|
|
|
PDF: minefield shows strangely hinted glyph shapes (only without truetype subsetting)
|
|
|
|
|
PDF: minefield has broken selection (only with truetype subsetting code)
|
2006-07-27 00:57:53 -07:00
|
|
|
4630 Fonts too large when drawing to image surface while printing
|
|
|
|
|
4863 stroking problems with wide dashed lines
|
2006-08-08 16:56:20 -07:00
|
|
|
7497 _cairo_color_compute_shorts fails with FPU set to single ...
|
2006-07-27 00:57:53 -07:00
|
|
|
|
|
|
|
|
Fix all expected failures (XFAIL) in the test suite
|
|
|
|
|
a8-mask
|
|
|
|
|
extend-reflect
|
|
|
|
|
filter-nearest-offset
|
|
|
|
|
leaky-dash
|
|
|
|
|
self-intersecting
|
|
|
|
|
text-rotate
|
2006-06-25 02:25:16 +02:00
|
|
|
|
2006-08-14 00:15:44 -04:00
|
|
|
Fix disabled tests in the test suite
|
|
|
|
|
show-glyphs-many
|
|
|
|
|
|
2006-04-26 14:34:02 -07:00
|
|
|
Win32 backend
|
2006-01-05 15:17:02 +00:00
|
|
|
✓1. Incorporate into test suite
|
2005-09-02 16:17:48 +00:00
|
|
|
2. Correct output for the entire suite
|
2006-01-05 15:17:02 +00:00
|
|
|
a. self-copy
|
|
|
|
|
b. trap-clip
|
|
|
|
|
[There is some mailing-list discussion about possible fixes
|
|
|
|
|
for these.]
|
2005-09-02 16:17:48 +00:00
|
|
|
|
2006-04-26 14:42:20 -07:00
|
|
|
New API
|
|
|
|
|
cairo_arc_to
|
|
|
|
|
see http://lists.freedesktop.org/archives/cairo/2005-August/004801.html
|
|
|
|
|
or see arc_to branch in bedhad's repository
|
|
|
|
|
|
2006-04-26 14:34:02 -07:00
|
|
|
PS/PDF improvements
|
|
|
|
|
1. Make image fallbacks finer-grained than a whole page
|
|
|
|
|
2. Ensure that PDF text output is "selectable"
|
2005-08-18 17:11:42 +00:00
|
|
|
|
2006-04-26 14:34:02 -07:00
|
|
|
Quartz backend (maintainer needed!)
|
2005-09-02 16:17:48 +00:00
|
|
|
1. Mark Quartz backend as supported:
|
|
|
|
|
a. Incorporate into test suite
|
|
|
|
|
b. Correct output for the entire suite
|
2006-08-17 15:28:47 -04:00
|
|
|
|
|
|
|
|
Misc
|
|
|
|
|
1. xlib backend requires xrender to compile, while it can perform without
|
|
|
|
|
xrender at run time. Make it compile without it.
|
2006-08-18 15:02:24 -07:00
|
|
|
|
|
|
|
|
[Here's some stuff that was sitting in the BUGS file. Some of these
|
|
|
|
|
are likely not existing bugs anymore. We should invesitgate each and
|
|
|
|
|
either move it up into the ROADMAP above or else just delete it.]
|
|
|
|
|
|
|
|
|
|
--
|
|
|
|
|
|
|
|
|
|
The caches need to be invalidated at font destruction time.
|
|
|
|
|
|
|
|
|
|
--
|
|
|
|
|
|
|
|
|
|
The polygon tessellation routine has problems. It appears that the
|
|
|
|
|
following paper has the right answers:
|
|
|
|
|
|
|
|
|
|
http://cm.bell-labs.com/cm/cs/doc/93/2-27.ps.gz
|
|
|
|
|
|
|
|
|
|
[Hobby93c] John D. Hobby, Practical Segment Intersection with
|
|
|
|
|
Finite Precision Output, Computation Geometry Theory and
|
|
|
|
|
Applications, 13(4), 1999.
|
|
|
|
|
|
|
|
|
|
Recent improvements to make the intersection code more robust (using
|
|
|
|
|
128-bit arithmetic where needed), have exposed some of the weakness in
|
|
|
|
|
the current tessellation implementation. So, for now, filling some
|
|
|
|
|
polygons will cause "leaking" until we implement Hobby's algorithm.
|
|
|
|
|
|
|
|
|
|
--
|
|
|
|
|
|
|
|
|
|
Stroke extents might not work for degenerate cases, (e.g. single
|
|
|
|
|
vertical or horizontal line).
|
|
|
|
|
|
|
|
|
|
--
|
|
|
|
|
|
|
|
|
|
Stroke width of 0 might do bad things.
|
|
|
|
|
|
|
|
|
|
--
|
|
|
|
|
|
|
|
|
|
Could there be a bug in PS backend exposed by?:
|
|
|
|
|
|
|
|
|
|
cairo_save
|
|
|
|
|
cairo_clip
|
|
|
|
|
cairo_restore
|
|
|
|
|
...
|
|
|
|
|
|
|
|
|
|
This needs a new testcase.
|
|
|
|
|
|
|
|
|
|
--
|
|
|
|
|
|
|
|
|
|
Text drawn with vertical metrics cannot currently use TrueType
|
|
|
|
|
subsetting for PDF/PS output as the code doesn't write out the necessary
|
|
|
|
|
VHEA or VMTX entries to the TrueType font objects. As a result, cairo uses
|
|
|
|
|
Type3 fonts which generates slightly different outlines.
|