cairo 1.5.14 snapshot available
From: Carl Worth <>
Date: Thu, 20 Mar 2008 17:08:01 -0700
Subject: cairo snapshot 1.5.14 now available

A new cairo snapshot 1.5.14 is now available from:

    which can be verified with:
        af40870b3ec62bbdeaecdf3ea4cce23919fedc42  cairo-1.5.14.tar.gz
        (signed by Carl Worth)

  Additionally, a git clone of the source tree:

        git clone git://

    will include a signed 1.5.14 tag which points to a commit named:

    which can be verified with:
        git verify-tag 1.5.14

    and can be checked out with a command such as:
        git checkout -b build 1.5.14

This is the seventh snapshot in cairo's unstable 1.5 series. It comes
3 weeks after the 1.5.12 snapshot. This snapshot includes support for
arbitrary X server visuals, (including PseudoColor), which was the
final remaining cairo-specific item on the cairo 1.6 roadmap. It also
includes a huge number of improvements to the cairo-quartz backend. So
this is effectively a cairo 1.6 release candidate. We expect very few
changes from now until 1.6 and only for specific bug fixes. See below
for more about what's new in cairo 1.5.14.

We do appreciate any testing and feedback you can provide. In
particular, if you know of a bug in cairo 1.5.14 that you'd like to
see fixed before 1.6.0 and that bug isn't exercised by the cairo test
suite, then please make loud noises on the cairo mailing list so that
we know about it.

Have fun with cairo!


Changes from cairo 1.5.12 to 1.5.14

API Change
Rename ATSUI font backend to Quartz font backend. This affects the
following usage:

    --enable-atsui      -> --enable-quartz-font

    cairo_atsui_font_face_create_for_atsu_font_id ->

This API change is justified by the cairo-quartz backend still be
marked as "experimental" rather than "supported", (though this is one
step toward making the change to "supported" before 1.6). Cairo will
still provide ABI compatibility with the old symbol name, however.

paginated (all of ps, pdf, svg, and win32-printing)
Optimize by not analyzing an image surface for transparency more than
once, (previously all images were analyzed twice).

cairo-ps and cairo-pdf
Avoiding emitting a matrix into the stroke output when unnecessary,
(making output size more efficient).

Reduce rounding error of path shapes by factoring large scale factors
out of the path matrix, (ensuring that a fixed-number of printed
digits for path coordinates contains as much information as possible).

Reduce excess digits for text position coordinates. This makes the
output file size much smaller without making the result any less

Eliminate bug causing extraneous text repetition on Linux PostScript
output in some cases.

    See: Mozilla Bug 419917 – Printed page contents are reflected
    inside bordered tables (Linux-only)

Optimize output when EXTEND_PAD is used.

Fix to not use fill-stroke operator with transparent fill, (else PDF
output doesn't match the cairo-defined correct result). See:

Fix stroke of path with a non-solid-color source pattern:

Fix text rendering with gradient or image source pattern.

Handling antialiasing correctly for cairo_stroke(), cairo_clip(), and

Correctly handle gradients with non-identity transformations:


Add native implementation of REPEAT and REFLECT extend modes for

Fix implementation for the "unbounded" operators, (CAIRO_OPERATOR_OUT,

Correctly handle endiannees in multi-architecture compiles on Mac OS

Avoid behavior which would cause Core Graphics to print warnings to
the console in some cases.

Fix handling of miter limit.

Fix to not use a 1bpp temporary surface in some cases while printing,
(so grayscale data is preserved rather than just becoming black and

Add support for rendering to arbitrary TrueColor X server
visuals. This fixes at least the following bugs:

    cairo doesn't support 8-bit truecolor visuals

    cairo doesn't support 655 xlib format

Add support for rendering to 8-bit PseudoColor X server visuals. This
fixes the following bug:

    Cairo doesn't support 8-bit pseudocolor visuals

Unresolved issues (must be fixed before cairo 1.6)
XXX: Need to decide if cairo_image_surface_create_for_data should be
documented and tested as supporting an image with a negative
stride. Also need to decide the correct return value for
cairo_format_stride_for_width in case of any error.