|author||Behdad Esfahbod <email@example.com>||2008-08-11 03:28:32 -0400|
|committer||Behdad Esfahbod <firstname.lastname@example.org>||2008-08-11 11:51:18 -0400|
[configure.in,NEWS] Release 184.108.40.206.2
2 files changed, 186 insertions, 38 deletions
@@ -1,38 +1,186 @@
-- 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 application to draw "funky" fonts.
- See test/user-font.c and test/user-font-proxy.c for usage examples.
- Note that user font API changed a bit just before this release.
-- show_text_glyphs: This is new API allowing 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 & 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
-- text_to_glyphs API: This is mostly useful in combination with user-fonts.
-The result of the above three changes combined is that when you render text
-using cairo_show_text() and a user font, the resulting PDF file is perfectly
-text extractable. Something one could not do with cairo before.
-- Toy font face constructor and getters: 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
-- LCD subpixel filtering using FreeType, with different filters. Original
- patch by David Turner.
+Release 1.7.2 (2008-08-11 Behdad Esfahbod <email@example.com>)
+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
+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!
+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
+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.
+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:
+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!
+ 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:
+ This is the "user" font face constructor, accompanied by a variety of method
+ signatures, getters, and setters for a callback-based font backend:
+ 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.
+ These add the possibility to choose between various available LCD subpixel
+ filters. The available filter values are modeled after what FreeType
+ These provide access to functionality and settings provided by
+ For API completeness.
+Various new values for cairo_status_t enum
diff --git a/configure.in b/configure.in
index 94aaf467b..b19526f46 100644
@@ -7,7 +7,7 @@ dnl For the micro number: odd => in-progress development (from git)
dnl even => tar-file snapshot or release
@@ -27,7 +27,7 @@ dnl ===========================================================================
# libtool shared library version
# Increment if the interface has additions, changes, removals.
# Increment any time the source changes; set to
# 0 if you increment CURRENT
@@ -36,7 +36,7 @@ m4_define(LT_REVISION, 0)
# Increment if any interfaces have been added; set to 0
# if any interfaces have been removed. removal has
# precedence over adding, so set to 0 if both happened.