Behavioral changes
------------------
Clips are changed to only affect destination operands, not
sources. This gives the desired behavior for cairo. If the X server's
Render implementation wants to use pixman it will have to select
source clipping, (presumably through a new API call that we can add at
that poin).
Bug fixes
---------
Fix leak of the clip region associated with an image in
pixman_image_destroy.
Fix units for stride return to be FbStip-sized, (this bug was causing
non antialiased text in cairo to appear as garbage).
Other changes
-------------
The implementation has been merged considerably with xserver/fb. Most
of the merge was just name changes, but there were likely some bug
fixes or performance improvements in there as well.
API Addition
------------
Add new function:
void
pixman_add_trapezoids (pixman_image_t *dst,
int x_off,
int y_off,
const pixman_trapezoid_t *traps,
int ntraps);
Performance improvement
-----------------------
Restrict size of intermediate surface used while compositing
trapezoids based on the bounds of the desination surface.
Bug fixes
---------
Fix rendering on 64-bit platforms.
Performance improvements
------------------------
Solid fills are now much faster, (thanks to Alexander Larsson).
Bug fixes
---------
Fixed to quiet warnings in newer versions of gcc.
Don't divide-by-zero if given an image of size 0x0.
Fixed several corner cases where values outside a trapezoid would be
drawn with alpha 1/255 (in the 8-bit case).
Internal changes
----------------
Imported the newer point-sampling trapezoid rasterization code that
Keith Packard wrote for the X server. This provide pixel-perfect
matching with the Render extension as well as code that is simpler,
more robust, and easier to maintain.
New functionality
-----------------
Added three new functions:
pixman_image_set_component_alpha
pixman_format_get_masks
pixman_image_get_format
Bug fixes
---------
Enabling both transform and repeat simultaneously now works.
Some byte-order fixes.
Clipping fixes: pixman now takes a copy of the client clipping region
client clipping is now actually used, it wasn't earlier.
in the process. (More information on tech-pkg.)
Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.
Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
All library names listed by *.la files no longer need to be listed
in the PLIST, e.g., instead of:
lib/libfoo.a
lib/libfoo.la
lib/libfoo.so
lib/libfoo.so.0
lib/libfoo.so.0.1
one simply needs:
lib/libfoo.la
and bsd.pkg.mk will automatically ensure that the additional library
names are listed in the installed package +CONTENTS file.
Also make LIBTOOLIZE_PLIST default to "yes".
libpixman - Pixel manipulation library
libpixman is a merge of libpixregion and libic.
It also includes the slim headers.
----------------------------------------------------------------------
libpixregion - Pixel region Library
libpixregion is a generic library for manipulating pixel regions. A
PixRegion is a set of Y-X banded rectangles that cover the desired
region.
libic - Image compositing library
libic is a generic image compositing library. libic provides
Porter/Duff compositing of images and implicit mask generation for
geometric primitives including trapezoids, triangles, and rectangles.
slim - Shared Library Interface Macros