[cairo-commit] cairo ChangeLog,1.851,1.852 TODO,1.57,1.58

Billy Biggs commit at pdx.freedesktop.org
Mon Aug 8 18:35:24 PDT 2005


Committed by: vektor

Update of /cvs/cairo/cairo
In directory gabe:/tmp/cvs-serv8364

Modified Files:
	ChangeLog TODO 
Log Message:
	reviewed by: cworth, otaylor

	* src/cairo.c: (cairo_set_antialias), (cairo_get_antialias):
	* src/cairo.h: Add a new API for disabling antialiasing of shapes
	drawn by cairo.  This is a hint and is not supported by all backends.

	* src/cairoint.h:
	* src/cairo-gstate-private.h:
	* src/cairo-gstate.c: (_cairo_gstate_init),
	(_composite_traps_draw_func),
	(_cairo_surface_clip_and_composite_trapezoids),
	(_cairo_gstate_clip_and_composite_trapezoids),
	(_cairo_gstate_clip), (_cairo_gstate_set_antialias),
	(_cairo_gstate_get_antialias): Store the antialiasing mode in the
	gstate and pass it to the backend for trapezoid rendering and for
	clipping.

	* src/cairo-clip-private.h:
	* src/cairo-clip.c: (_cairo_clip_intersect_path),
	(_cairo_clip_intersect_mask), (_cairo_clip_clip): Pass the
	antialiasing parameter down to the backend where appropriate.

	* src/cairo-surface.c: (_fallback_composite_trapezoids),
	(_cairo_surface_composite_trapezoids), (_cairo_surface_reset_clip),
	(_cairo_surface_intersect_clip_path),
	(_cairo_surface_set_clip_path_recursive),
	(_cairo_surface_set_clip_path): Pass the antialiasing parameter down
	to the backend where appropriate.

	* src/cairo-image-surface.c:
	(_cairo_image_surface_composite_trapezoids): Add support for A1 format
	trapezoid rendering, and remove the _create_mask_image function,
	creating a temporary image from memory we allocate and clear.

	* src/cairo-xcb-surface.c:
	(_cairo_xcb_surface_composite_trapezoids): Support A1 masks to disable
	antialiasing using the RENDER extension when requested.

	* src/cairo-xlib-surface.c: (_create_trapezoid_mask),
	(_cairo_xlib_surface_composite_trapezoids): Support A1 masks to disable
	antialiasing using the RENDER extension when requested.

	* src/cairo-meta-surface-private.h:
	* src/cairo-meta-surface.c:
	(_cairo_meta_surface_composite_trapezoids),
	(_cairo_meta_surface_intersect_clip_path),
	(_cairo_meta_surface_replay): Blindly pass through the antialising
	parameter.

	* src/cairo-glitz-surface.c:
	(_cairo_glitz_surface_composite_trapezoids):
	* src/cairo-pdf-surface.c:
	(_cairo_pdf_surface_composite_trapezoids),
	(_cairo_pdf_surface_intersect_clip_path): 
	* src/cairo-ps-surface.c: (_cairo_ps_surface_composite_trapezoids),
	(_cairo_ps_surface_intersect_clip_path),
	(_ps_output_composite_trapezoids),
	(_ps_output_intersect_clip_path): Add the antialiasing parameter but
	don't support it.

	* test/Makefile.am:
	* test/unantialiased-shapes-ref.png:
	* test/unantialiased-shapes.c: (big_star_path), (draw), (main):
	Add a test case and a reference image from the latest libpixman.

	* doc/public/tmpl/cairo-font.sgml:
	* doc/public/tmpl/cairo.sgml:
	* doc/public/cairo-sections.txt: Add the new antialiasing disabling API to
	the docs.

	* TODO: Update progress on a parameter to disable antialiasing.



Index: ChangeLog
===================================================================
RCS file: /cvs/cairo/cairo/ChangeLog,v
retrieving revision 1.851
retrieving revision 1.852
diff -u -d -r1.851 -r1.852
--- ChangeLog	9 Aug 2005 00:32:24 -0000	1.851
+++ ChangeLog	9 Aug 2005 01:35:22 -0000	1.852
@@ -1,3 +1,77 @@
+2005-08-08  Billy Biggs  <vektor at dumbterm.net>
+
+	reviewed by: cworth, otaylor
+
+	* src/cairo.c: (cairo_set_antialias), (cairo_get_antialias):
+	* src/cairo.h: Add a new API for disabling antialiasing of shapes
+	drawn by cairo.  This is a hint and is not supported by all backends.
+
+	* src/cairoint.h:
+	* src/cairo-gstate-private.h:
+	* src/cairo-gstate.c: (_cairo_gstate_init),
+	(_composite_traps_draw_func),
+	(_cairo_surface_clip_and_composite_trapezoids),
+	(_cairo_gstate_clip_and_composite_trapezoids),
+	(_cairo_gstate_clip), (_cairo_gstate_set_antialias),
+	(_cairo_gstate_get_antialias): Store the antialiasing mode in the
+	gstate and pass it to the backend for trapezoid rendering and for
+	clipping.
+
+	* src/cairo-clip-private.h:
+	* src/cairo-clip.c: (_cairo_clip_intersect_path),
+	(_cairo_clip_intersect_mask), (_cairo_clip_clip): Pass the
+	antialiasing parameter down to the backend where appropriate.
+
+	* src/cairo-surface.c: (_fallback_composite_trapezoids),
+	(_cairo_surface_composite_trapezoids), (_cairo_surface_reset_clip),
+	(_cairo_surface_intersect_clip_path),
+	(_cairo_surface_set_clip_path_recursive),
+	(_cairo_surface_set_clip_path): Pass the antialiasing parameter down
+	to the backend where appropriate.
+
+	* src/cairo-image-surface.c:
+	(_cairo_image_surface_composite_trapezoids): Add support for A1 format
+	trapezoid rendering, and remove the _create_mask_image function,
+	creating a temporary image from memory we allocate and clear.
+
+	* src/cairo-xcb-surface.c:
+	(_cairo_xcb_surface_composite_trapezoids): Support A1 masks to disable
+	antialiasing using the RENDER extension when requested.
+
+	* src/cairo-xlib-surface.c: (_create_trapezoid_mask),
+	(_cairo_xlib_surface_composite_trapezoids): Support A1 masks to disable
+	antialiasing using the RENDER extension when requested.
+
+	* src/cairo-meta-surface-private.h:
+	* src/cairo-meta-surface.c:
+	(_cairo_meta_surface_composite_trapezoids),
+	(_cairo_meta_surface_intersect_clip_path),
+	(_cairo_meta_surface_replay): Blindly pass through the antialising
+	parameter.
+
+	* src/cairo-glitz-surface.c:
+	(_cairo_glitz_surface_composite_trapezoids):
+	* src/cairo-pdf-surface.c:
+	(_cairo_pdf_surface_composite_trapezoids),
+	(_cairo_pdf_surface_intersect_clip_path): 
+	* src/cairo-ps-surface.c: (_cairo_ps_surface_composite_trapezoids),
+	(_cairo_ps_surface_intersect_clip_path),
+	(_ps_output_composite_trapezoids),
+	(_ps_output_intersect_clip_path): Add the antialiasing parameter but
+	don't support it.
+
+	* test/Makefile.am:
+	* test/unantialiased-shapes-ref.png:
+	* test/unantialiased-shapes.c: (big_star_path), (draw), (main):
+	Add a test case and a reference image from the latest libpixman.
+
+	* doc/public/tmpl/cairo-font.sgml:
+	* doc/public/tmpl/cairo.sgml:
+	* doc/public/cairo-sections.txt: Add the new antialiasing disabling API to
+	the docs.
+
+	* TODO: Update progress on a parameter to disable antialiasing.
+
 2005-08-08  Carl Worth  <cworth at cworth.org>
 
 	* test/.cvsignore: Ignore clip-operator and unbounded-operator.

Index: TODO
===================================================================
RCS file: /cvs/cairo/cairo/TODO,v
retrieving revision 1.57
retrieving revision 1.58
diff -u -d -r1.57 -r1.58
--- TODO	6 Aug 2005 23:57:14 -0000	1.57
+++ TODO	9 Aug 2005 01:35:22 -0000	1.58
@@ -11,7 +11,7 @@
 -----------------------------------------
 	cairo_begin_group, cairo_end_group, cairo_get_group
 PDR C	cairo_surface_mark_dirty (see below for details)
-PDR	Add support for non-antialiased rendering. API ?
+PDRTC	Add support for non-antialiased rendering + API
 	Add CAIRO_FILL_RULE_INVERSE_WINDING and CAIRO_FILL_RULE_INVERSE_EVEN_ODD
 	Add cairo_text_glyphs (see below for details)
 	Add support for programmatic patterns, (ie. arbitrary gradients)




More information about the cairo-commit mailing list