In addition to helping us preserve a sharp line between which symbols are
part of the public API and which are private parts of the implementation,
this can also help mozilla avoid clashes between its modified, internal
copy of cairo and the system version of cairo. See the mozilla bug here:
https://bugzilla.mozilla.org/show_bug.cgi?id=341874
Add a load_truetype_table function to cairo_scaled_font_backend_t and
use it to load the truetype sfnt tables. Implement this with freetype
for the freetype font backend and use GetFontData for win32. Atsui
remains unimplemented, and still falls back to type3 fonts.
We have switched back and forth quite a few times. This time I'm switching
because with pngalpha we get gray antialiased text and graphics while with
png16m all we get is no antialiasing. This is definitely a bug in the png16m
driver, but I won't wait until it gets fixed upstream.
Previously Carl Worth switched to pngalpha and reverted it immediately in
commit c4fc7b06b5. I've now fixed image-diff to
work with the output of pngalpha, so we can switch. It requires lots of
reference image updates, but still doesn't help with reducing the number of
PS-specific reference images we need.
Previously it was using the equation 128+diff/3, which results in
lots of gray and de-emphasized difference. Now it's using
MIN(255,diff*4) which more emphasizes the real difference.
that includes all tests depending on CAIRO_ANTIALIAS_NONE and
CAIRO_ANTIALIAS_SUBPIXEL.
This removes separate pdf_ignored_tests and svg_ignored_tests
arrays that were out of synch and otherwise the same.
New internal function _cairo_surface_set_font_options is used to set them.
cairo_surface_create_similar propagates the font options of the other
surface into the newly created surface. Fixes bugs with font options in
fallback images and bug 4106.
Fixes the bug that paginated backends had font-matrix translation
applied twice, AND removes a second copy of the glyphs. It's
essentially similar to what cworth did for stroke/fill/clip in
this commit: bd92eb7f3c
Reviewed by: Carl Worth
Do a funny transition of CAIRO_TEST_TARGET through TARGETS such that
one can limit tested targets both through CAIRO_TEST_TARGET env var
and TARGETS make var on the command line.
There appears to be a bug in some X servers which is triggered by
rendering 1-bit glyphs with zero size via the functions
XRenderAddGlyphs and XRenderCompositeText8 (and likely its variants).
We avoid this bug by making a copy of the glyphs array which does not
include any of the size-zero glyphs so that the X server never sees them.