A new cairo snapshot 1.3.10 is now available from: http://cairographics.org/snapshots/cairo-1.3.10.tar.gz which can be verified with: http://cairographics.org/snapshots/cairo-1.3.10.tar.gz.sha1 0a899378673bfda49d1b7530405d62c24b9e051a cairo-1.3.10.tar.gz http://cairographics.org/snapshots/cairo-1.3.10.tar.gz.sha1.asc (signed by Carl Worth) Additionally, a git clone of the source tree: git clone git://git.cairographics.org/git/cairo will include a signed 1.3.10 tag which points to a commit named: b35cfde7f0e2896ccc1453f9716cb9b61c42cf94 which can be verified with: git verify-tag 1.3.10 and can be checked out with a command such as: git checkout -b build 1.3.10 Santa Claus is coming just a little bit early this year, and he's bringing a shiny new cairo snapshot for all the good little boys and girls to play with. This is the fifth development snapshot in the 1.3 series. It comes 9 days after the 1.3.8 snapshot, and still well within our goal of having a new snapshot every week, (though don't expect one next week---we'll all be too stuffed with sugar plums). Speaking of sugar plums, there's a sweet treat waiting in this cairo snapshot---greatly improved performance for stroking rectilinear shapes, like the ever common rectangle: image-rgb box-outline-stroke-100 0.18 -> 0.01: 25.58x speedup ████████████████████████▋ image-rgba box-outline-stroke-100 0.18 -> 0.01: 25.57x speedup ████████████████████████▋ xlib-rgb box-outline-stroke-100 0.49 -> 0.06: 8.67x speedup ███████▋ xlib-rgba box-outline-stroke-100 0.22 -> 0.04: 5.39x speedup ████▍ In past releases of cairo, some people had noticed that using cairo_stroke to draw rectilinear shapes could be awfully slow. Many people had worked around this by using cairo_fill with a more complex path and gotten a 5-15x performance benefit from that. If you're one of those people, please rip that workaround out, as now the more natural use of cairo_stroke should be 1.2-2x faster than the unnatural use of cairo_fill. And if you hadn't ever implemented that workaround, then you just might get to see your stroked rectangles now get drawn 5-25x faster. Beyond that performance fix, there are a handful of bug fixes in this snapshot: * Fix for glyph cache race condition in glitz backend (Jinghua Luo) * Many fixes for ATSUI text rendering (Brian Ewins) * Un-break recent optimization-triggered regression in rendering text with a translation in the font matrix (Behdad Esfahbod) * Fix make check to work on OPD platforms (IA64 or PPC64) (Frederic Crozat) * Fix a couple of character spacing issues on Windows (Jonathan Watt) Have fun with that, everybody, and we'll be back for more in the new year, (with a plan to add the last of our performance improvements in this round, fix a few bad, lingering bugs, and then finish off a nice, stable 1.4 release before the end of January). -Carl What is cairo ============= Cairo is a 2D graphics library with support for multiple output devices. Currently supported output targets include the X Window System, win32, and image buffers, as well as PDF, PostScript, and SVG file output. Experimental backends include OpenGL (through glitz), Quartz, XCB, BeOS, OS/2, and DirectFB. Cairo is designed to produce consistent output on all output media while taking advantage of display hardware acceleration when available (for example, through the X Render Extension). The cairo API provides operations similar to the drawing operators of PostScript and PDF. Operations in cairo including stroking and filling cubic Bézier splines, transforming and compositing translucent images, and antialiased text rendering. All drawing operations can be transformed by any affine transformation (scale, rotation, shear, etc.). Cairo has been designed to let you draw anything you want in a modern 2D graphical user interface. At the same time, the cairo API has been designed to be as fun and easy to learn as possible. If you're not having fun while programming with cairo, then we have failed somewhere---let us know and we'll try to fix it next time around. Cairo is free software and is available to be redistributed and/or modified under the terms of either the GNU Lesser General Public License (LGPL) version 2.1 or the Mozilla Public License (MPL) version 1.1. Where to get more information about cairo ========================================= The primary source of information about cairo is: http://cairographics.org/ The latest releases of cairo can be found at: http://cairographics.org/releases Snapshots of in-development versions of cairo: http://cairographics.org/snapshots The programming manual for using cairo: http://cairographics.org/manual Mailing lists for contacting cairo users and developers: http://cairographics.org/lists Answers to some frequently asked questions about cairo: http://cairographics.org/FAQ Log of change from 1.3.8 to 1.3.10 ================================== Behdad Esfahbod (12): [pdiff] Fix compiler warnings, that were causing crashes [pdiff] Use CAIRO_CFLAGS, to make sure warnings are enabled [cairo-gstate] Don't bypass glyph transformation if font_matrix has translation (#9365) [test] Fix typo in test comment [test] Add ft-text-vertical-layout-type3-ps-argb32-ref.png [configure] Use AC_C_INLINE to correctly define inline [pdiff] Don't use float math functions if not using gcc with C99 [pdiff] Define _GNU_SOURCE to get correct symbols out of <math.h> [PS] Fix typo in comment emitted for Type1 fallback font subsets [type1-subset] Return UNSUPPORTED for vertical fonts [tests/ft-text-vertical-layout-type3] Remove comment that this emits Type3 font [test] Fix typo in test comment, again Brian Ewins (3): [ATSUI] Support disabling antialiased text [ATSUI] Round glyph locations to nearest pixel [ATSUI] Use screen metrics instead of ideal metrics to compute glyph extents Carl Worth (14): Bump cairo version to 1.3.9 after making 1.3.8 snapshot Merge branch 'master' of git.cairographics.org:/git/cairo into cairo test/.gitignore: Ignore binarries for some recently added tests Rename cairo-path.c to cairo-path-fixed.c Rename cairo-path-data.c to cairo-path.c (and similar) Rename remaining cairo_path_data to cairo_path in function names, etc. Add new rectilinear-stroke test Reimplement path.has_current point as a 1-bit bitfield Put ft-text-vertical-layout-type1 back on the XFAIL list Add optimization for rectilinear stroke Ignore another test case binary Annoying template churn NEWS: Add notes for 1.3.10 snapshot Increment cairo version to 1.3.10 (and libtool versioning to 12:3:10) Frederic Crozat (1): [check-defs.sh] Fix make check for OPD platforms Jinghua Luo (1): Glitz: fix a potential use after free bug in _cairo_glitz_surface_old_show_glyphs. Jonathan Watt (3): revert accidental mode changes in my previous commit Fix a couple of character spacing issues on Windows Merge branch 'master' of git://git.cairographics.org/git/cairo M Joonas Pihlaja (1): New performance test case "mosaic" for splines.
Attachment:
pgpgyCQ0u5uMe.pgp
Description: PGP signature