Commit graph

2456 commits

Author SHA1 Message Date
Adrian Johnson
a0989f427b Remove freetype dependency for truetype subsetting code.
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.
2006-08-02 19:30:55 -04:00
Michael Emmel
c05dd48ac1 Merge branch 'master' of ssh+git://git.cairographics.org/git/cairo 2006-08-02 14:32:50 -07:00
Michael Emmel
e0bec64c98 Fixed debug statement that broke compile 2006-08-02 14:32:24 -07:00
Kristian Høgsberg
0da4b9319f Drop unused src/cairo-font-subset-private.h. 2006-08-02 15:18:56 -04:00
Adrian Johnson
067d97eb17 This patch fixes the problem where the postscript output
does not print when the size of the embedded truetype font
exceeds 64k.
2006-08-02 15:17:09 -04:00
Behdad Esfahbod
127704c225 Look for per-target reference image too 2006-08-01 20:39:56 -04:00
Behdad Esfahbod
fc715ffd80 New PS ref images, matching the recent png16m->pngalpha driver change 2006-08-01 18:21:27 -04:00
Behdad Esfahbod
3e24f516a2 Change the text string "cd" to "AB" in test to match the other string
that is drawn.  The reason, one is draw using show_text, the other
using text_path.  The difference is more emphasized when rendering the
same string.
2006-08-01 16:13:29 -04:00
Behdad Esfahbod
3d95919fab Switch from ghostscript's png16m driver to pngalpha for PS->PNG again.
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.
2006-08-01 15:27:11 -04:00
Behdad Esfahbod
5a23fd70a0 Change the way diff images highlight differences.
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.
2006-08-01 15:20:39 -04:00
Behdad Esfahbod
d85f30e789 Make image_diff_flattened flatten the first image too.
This is useful to use the ghostscript pngalpha driver for example.
2006-08-01 15:18:19 -04:00
Behdad Esfahbod
556a4d8405 Add vector_ignored_tests that is tests ignored for ps/pdf/svg
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.
2006-08-01 15:16:10 -04:00
Behdad Esfahbod
226178539a Add comments about CAIRO_ENABLE_BACKEND. 2006-07-31 16:05:34 -04:00
Behdad Esfahbod
2fa709d6af Set font options in the test context and make tests not do that
This should help with not requiring many backend-specific reference
images, and some should be removed now.
2006-07-31 15:17:15 -04:00
Behdad Esfahbod
9fcb3c32c1 Set fallback resolution in create_similar. Update docs to reflect that. 2006-07-31 14:50:50 -04:00
Behdad Esfahbod
a61ac1aeed Set font_options on image surfaces we create.
This may not be really necessary as we only create image surfaces as
temporary surfaces and their font options should not be sampled normally.
2006-07-31 14:47:10 -04:00
Behdad Esfahbod
b3341b4eda Let backends return NULL in create_similar to take the fallback path.
Make xlib backend use it.
2006-07-31 14:45:54 -04:00
Behdad Esfahbod
bdb4e1edad Implement per-surface font options.
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.
2006-07-31 14:44:42 -04:00
Behdad Esfahbod
a8a0082c53 Remove dummy create_similar in PS/PDF and let fallback do the same
which is simply creating an image surface.
2006-07-31 14:41:27 -04:00
Ian Osgood
72b51b6f0c XCB: implement set_clip_region 2006-07-31 09:59:09 -07:00
Jamey Sharp
2eeb338590 XCB: Use xcb-renderutil where cairo-xlib used libXrender. 2006-07-31 09:44:46 -07:00
Jamey Sharp
6b0d3433b7 XCB: XCBRenderTRAP was renamed to XCBRenderTRAPEZOID. 2006-07-31 08:53:57 -07:00
Behdad Esfahbod
88675958ef Remove config.cache in autogen.sh. 2006-07-31 01:03:15 -04:00
Carl Worth
eb9caf0833 Add -Wsign-compare compiler flag and fix all warnings 2006-07-28 22:50:06 -07:00
Behdad Esfahbod
5e0f46cdeb Standardize on unsigned for ref_count type and add CAIRO_REF_COUNT_INVALID
The CAIRO_REF_COUNT_INVALID macro simply hides the ((unsigned int)-1) cast
to avoid warnings about comparison between signed and unsigned values.
2006-07-28 15:41:11 -07:00
Behdad Esfahbod
84b37568e1 Add -Wold-style-definition compiler falg and fix all warnings. 2006-07-28 15:23:22 -07:00
Behdad Esfahbod
811f7af1b2 s/dist-hook/dist-hook-local/
Should drop spurious make warning.
2006-07-28 18:18:50 -04:00
Behdad Esfahbod
8411494948 Move font-matrix translation and device transform from surface to gstate
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
2006-07-28 15:15:15 -04:00
Carl Worth
2f7da1aafb INSTALL: Mention DYLD_LIBRARY_PATH for mac OS X 2006-07-28 10:51:24 -07:00
Behdad Esfahbod
e5f4b92261 Make "double *dash" argument const in cairo_set_dash 2006-07-27 15:20:14 -04:00
Behdad Esfahbod
e92d693e07 Make "CAIRO_TEST_TARGET=... make check" work again
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.
2006-07-27 14:59:53 -04:00
Behdad Esfahbod
6ced3edb69 Don't make doc upon make install. 2006-07-27 14:59:53 -04:00
Carl Worth
280823173d Update ROADMAP with 1.2.2 and 1.4 plans now that 1.2.0 is out 2006-07-27 00:57:53 -07:00
Carl Worth
456cdb3058 Elide size-zero glyphs from calls to XRender functions.
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.
2006-07-27 00:17:52 -07:00
Michael Emmel
8601c2c683 Merge branch 'master' of ssh+git://git.cairographics.org/git/cairo 2006-07-20 23:04:37 -07:00
Michael Emmel
cd2f50e6c4 Check for zero before freeing region 2006-07-20 23:01:06 -07:00
Vladimir Vukicevic
b7191885c8 [xlib] Remove XSync implementation of surface_flush
Remove the xlib implementation of surface_flush which just called XSync
before.
2006-07-17 11:33:47 -07:00
Jeff Muizelaar
fbb1758ba8 Fix degenerate-path stroking with dashed lines.
This draws dashed degenerate-paths if the dash is on at the point of the
path and otherwise draws nothing.
2006-07-15 14:44:29 -04:00
Jeff Muizelaar
fdebc369d2 Modify degenerate-path test case to test dashed degenerate paths. 2006-07-15 14:39:32 -04:00
Jeff Muizelaar
b607cdff98 Test closed dashed paths where the first and last sub-path do not join.
This tests the situation reported by Keith Wells where the start point of a
closed dashed path was not being properly capped.
2006-07-15 14:39:26 -04:00
Behdad Esfahbod
84840e6bba Use font matrix offset to reposition glyph origin instead of adjusting advance
As the font matrix includes translation, which is otherwise unused for glyph
transformation, the interpretation of translation is fairly arbitrary. For
1.2.0, we choose to have this translation affect the glyph advance with the
thought that it could be used to do letter spacing/kerning. That is fairly
useless in practice, and a far more useful interpretation is to relocate
the origin of each glyph.

This patch uses the translation in the font matrix as an offset for the
glyph origin in user space. It turns out glyph extents were already correctly
shifted.

The end result with this patch is to have cairo match the 1.0 behaviour for
font matrix translations, but now we know why :-)

Explanation above courtesy of Keith Packard.
2006-07-14 21:42:41 -04:00
Behdad Esfahbod
47d3c5a2c6 Flush stdout after writing \r, to remove artifacts. 2006-07-14 20:06:34 -04:00
Carl Worth
c70edff084 Add font-matrix-translation test case. 2006-07-14 14:40:47 -07:00
Carl Worth
b390e2c456 pixman-rotate: remove stale svg backend reference images 2006-07-14 14:40:47 -07:00
Carl Worth
2b30f85cad ft-text-vertical-layout: Update stale reference images 2006-07-14 14:40:47 -07:00
Michael Emmel
5d64efdbb8 Merge branch 'master' of ssh+git://git.cairographics.org/git/cairo 2006-07-14 09:37:22 -07:00
Michael Emmel
9907813d57 Fixed debug message to use new member name 2006-07-14 09:36:35 -07:00
Behdad Esfahbod
6a5d66f651 Go back to "!!!CRASHED!!!" message now that there's no confusion. 2006-07-13 18:53:25 -04:00
Behdad Esfahbod
6c7099b0cc Only generate HTML for log files passed on the command line.
With the make bits already in place, this means that make retest
creates HTML for only the retested tests.
2006-07-13 18:50:14 -04:00
Carl Worth
4b22cb41a9 Use 'FAIL' instead of 'UNEXPECTED FAILURE' in test output.
There's no ambiguity anymore due to duplicated printing, so go
back to the classic, and easier to read wording.
2006-07-13 15:23:06 -07:00