[cairo-commit] [cairo-www] src/news

Carl Worth cworth at freedesktop.org
Mon Aug 11 10:18:34 PDT 2008


 src/news/cairo-1.7.2.mdwn |  229 ++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 229 insertions(+)

New commits:
commit 0adbdce62ea359c111aa69906855fa10bb1c3dd5
Author: Carl Worth <cworth at cworth.org>
Date:   Mon Aug 11 10:18:02 2008 -0700

    Add news item for 1.7.2 snapshot

diff --git a/src/news/cairo-1.7.2.mdwn b/src/news/cairo-1.7.2.mdwn
new file mode 100644
index 0000000..345afea
--- /dev/null
+++ b/src/news/cairo-1.7.2.mdwn
@@ -0,0 +1,229 @@
+[[meta title="cairo 1.7.2 snapshot available"]]
+[[meta date="2008-08-11"]]
+
+	From: Behdad Esfahbod <behdad at behdad.org>
+	Date: Mon, 11 Aug 2008 13:05:45 -0400
+	To: cairo-announce at cairographics.org
+	Cc: gnome-announce-list at gnome.org
+	Subject: [cairo] cairo snapshot 1.7.2 now available
+	
+	A new cairo snapshot 1.7.2 is now available from:
+	
+		http://cairographics.org/snapshots/cairo-1.7.2.tar.gz
+	
+	    which can be verified with:
+	
+		http://cairographics.org/snapshots/cairo-1.7.2.tar.gz.sha1
+		29569943dad4a4e5bbe16495404288a466e1bd0f  cairo-1.7.2.tar.gz
+	
+		http://cairographics.org/snapshots/cairo-1.7.2.tar.gz.sha1.asc
+		(signed by Behdad Esfahbod)
+	
+	  Additionally, a git clone of the source tree:
+	
+		git clone git://git.cairographics.org/git/cairo
+	
+	    will include a signed 1.7.2 tag which points to a commit named:
+		057a832f9e806f9321648e47ee314a62e82e6ba4
+	
+	    which can be verified with:
+		git verify-tag 1.7.2
+	
+	    and can be checked out with a command such as:
+		git checkout -b build 1.7.2
+	
+	Release 1.7.2 (2008-08-11 Behdad Esfahbod <behdad at behdad.org>)
+	==============================================================
+	The cairo community is finally ready to announce availability of the 1.7.2
+	snapshot of the cairo graphics library.  This is embarrissingly the first
+	snapshot in the 1.7 unstable series of cairo, leading to the eventual release
+	of cairo 1.8, currently planned for late September.
+	
+	This snapshot comes four months after the 1.6.4 release.  We have done a
+	really bad job on getting development stapshots out this cycle, but
+	hopefully all the API changes for 1.8 are now finished and the remaining
+	weeks will be spent on bug-fixing.  There is more than 400 commits worth
+	of changes in this snapshot, and those can use some testing.  Read on!
+	
+	Text, text, and more text!
+	- --------------------------
+	The dominant theme of this release, and 1.8 in general, is improvements
+	around cairo text API.  Here is a high-level list of changes with text
+	handling:
+	
+	User fonts
+	- ----------
+	This is new API allowing the user of cairo API to provide drawings for glyphs
+	in a font.  This is most useful in implementing fonts in non-standard formats,
+	like SVG fonts and Flash fonts, but can also be used by games and other
+	applications to draw "funky" fonts.  See test/user-font.c and
+	test/user-font-proxy.c for usage examples.  This is based on early work by
+	Kristian Høgsberg.  Thanks Kristian!
+	
+	show_text_glyphs
+	- ----------------
+	This new API allows the caller of cairo to mark text glyphs with their
+	original text.  The PDF backend implements this new API and latest Pango
+	master uses it.  The result is (when bugs are fixed) that complex text can be
+	copied out of pangocairo's PDF output correctly and reliably.  There are bugs
+	to fix though.  A few poppler bugs, and some more in cairo and pango.
+	
+	To test show_text_glyph, just grab pango master and this cairo snapshot and
+	print text in gedit.  Open in acroread or evince, select all, copy, paste
+	in gedit and compare.  The Arabic text with diacritic marks is particularly
+	showing bad.  Try with pango/pango-view/HELLO.txt if you are brave
+	enough.  The Indic text is showing improvements, but is still coming out
+	buggy.
+	
+	LCD subpixel filtering using FreeType
+	- -------------------------------------
+	FreeType 2.3.5 added support for various LCD subpixel filtering, and
+	fontconfig 2.6.0 added support for configuring LCD filter on a font by font
+	basis.  Cairo now relies on FreeType and fontconfig for subpixel filtering.
+	This work is based on David Turner's original patch to cairo, maintained
+	and tested by Sylvain Pasche and others.  Thanks all!
+	
+	Toy font face constructor and getter
+	- ------------------------------------
+	Mostly for API completion, but also useful for higher level (like Pango) to
+	hook into what the user has set using cairo_select_font_face(), making that
+	toy API a bit more useful.
+	
+	FreeType: respecting FC_FT_FACE
+	- -------------------------------
+	Previously it was impossible to instruct cairo to do emboldening on a font
+	face object created from an FT_Face.  Cairo now respects and uses the
+	FC_FT_FACE fontconfig pattern element, so emboldening can be achieved by
+	using cairo_ft_font_face_create_for_pattern() and a carefully crafted pattern
+	using FC_FT_FACE and FC_EMBOLDEN.
+	
+	
+	PS/PDF: More efficient output
+	- -----------------------------
+	Adrian Johnson has been busy fixing all kinds of bugs in PS and PDF
+	backends, as well making them generate much more compact output by avoiding
+	things like re-emitting the color or linestyle on every drawing operation.
+	Thanks Adrian!
+	
+	
+	Xlib: Dithering
+	- ---------------
+	Cairo now does simple dithering when rendering to legacy X servers.  This is
+	mostly visible with 8-bit visuals.
+	
+	Xlib: Avoid rendering glyphs out of surface bounds
+	- --------------------------------------------------
+	This seemingly harmless change manifested a bug with OpenOffice.org 3 versions
+	where OO.o was passing bogus surface extents to cairo, resulting in no text
+	rendered in OO.o.  Please contact your distro's OO.o maintainers if you see
+	this bug and point them to the following URL:
+	
+	  https://bugs.freedesktop.org/show_bug.cgi?id=16209
+	
+	Xlib: Improved performance with Xrender-less X servers
+	- ------------------------------------------------------
+	Cairo now performs better on remote, Xrender-less X servers by being smarter
+	about using X core protocol facilities instead of falling back to doing all
+	rendering on the client side.
+	
+	
+	Directfb: backend improvements
+	- ------------------------------
+	The directfb backend, though still unsupported, has seen a good deal of
+	improvements.  Thanks Vlad!
+	
+	
+	Bug fixing and optimizations
+	- ----------------------------
+	Countless bugs have been fixed and optimizations made, many of them thanks to
+	Chris Wilson.  Thanks Chris!
+	
+	
+	API additions
+	- -------------
+	
+	cairo_show_text_glyphs
+	
+	  This is a new text rendering API.  Being a more advanced version of
+	  cairo_show_glyphs(), it is aimed for use by higher-level text toolkits like
+	  Pango, and enables better text extraction from output generated by backends
+	  like PDF and SVG.  The PDF backend already implements it, and the upcoming
+	  Pango release will use it.
+	
+	  To make that API work, a bunch of other additions were made:
+	
+	cairo_glyph_allocate
+	cairo_glyph_free
+	cairo_text_cluster_t
+	cairo_text_cluster_allocate
+	cairo_text_cluster_free
+	cairo_has_show_text_glyphs
+	
+	
+	cairo_user_font_face_create
+	
+	  This is the "user" font face constructor, accompanied by a variety of method
+	  signatures, getters, and setters for a callback-based font backend:
+	
+	CAIRO_FONT_TYPE_USER
+	cairo_user_scaled_font_init_func_t
+	cairo_user_scaled_font_render_glyph_func_t
+	cairo_user_scaled_font_text_to_glyphs_func_t
+	cairo_user_scaled_font_unicode_to_glyph_func_t
+	cairo_user_font_face_set_init_func
+	cairo_user_font_face_set_render_glyph_func
+	cairo_user_font_face_set_text_to_glyphs_func
+	cairo_user_font_face_set_unicode_to_glyph_func
+	cairo_user_font_face_get_init_func
+	cairo_user_font_face_get_render_glyph_func
+	cairo_user_font_face_get_text_to_glyphs_func
+	cairo_user_font_face_get_unicode_to_glyph_func
+	
+	
+	cairo_scaled_font_text_to_glyphs
+	
+	  We were previously reluctant to provide this function as text-to-glyphs
+	  support in cairo was limited to "toy" font functionality, not really
+	  interesting for real-world text processing.  However, with user-fonts
+	  landing, this API is needed to expose full access to how user-fonts
+	  convert text to glyphs.  This is expected to be used by text toolkits like
+	  Pango, as well as "proxy" user-font implementations.
+	
+	
+	cairo_lcd_filter_t
+	cairo_font_options_set_lcd_filter
+	cairo_font_options_get_lcd_filter
+	
+	  These add the possibility to choose between various available LCD subpixel
+	  filters.  The available filter values are modeled after what FreeType
+	  provides.
+	
+	
+	cairo_toy_font_face_create
+	cairo_toy_font_face_get_family
+	cairo_toy_font_face_get_slant
+	cairo_toy_font_face_get_weight
+	
+	  These provide access to functionality and settings provided by
+	  cairo_select_font_face().
+	
+	
+	cairo_scaled_font_get_scale_matrix
+	cairo_surface_get_fallback_resolution
+	
+	  For API completeness.
+	
+	
+	Various new values for cairo_status_t enum
+	
+	
+	Known issues:
+	
+	- - Type3 fonts generated by cairo's PDF backend may show up in poppler/Evince
+	  in a different color than expected.  This is fixed in poppler master branch.
+	  This mostly affects cairo user fonts.  The test case test/user-font.c
+	  demonstrates this.
+	
+	- - User fonts using other fonts in their rendering are currently embedded in
+	  PDF as fallback bitmap glyphs.  This will be (hopefully) fixed before 1.8.
+	  The test case test/user-font-proxy.c demonstrates this.


More information about the cairo-commit mailing list