Commit graph

3183 commits

Author SHA1 Message Date
Carl Worth
861f1cb4f7 Merge branch 'jrmuizel-stroking-fixes' into cairo
Conflicts:

	test/dash-caps-joins-ps-argb32-ref.png
	test/degenerate-path-ps-argb32-ref.png
	test/degenerate-path.c
2006-08-18 07:59:20 -07:00
Carl Worth
c2d92d4397 ROADMAP: Mark the close path bug as fixed. 2006-08-18 06:32:43 -07:00
Carl Worth
c78c011017 Don't set current point to (0,0) in close_path.
The setting of current point to (0,0) is actually harmless, but it
definitely looks like a bug, (since after close_path the current point
is really the last move point).

We don't keep track of last move point here, nor do we even need to.
So we can be consistent with _cairo_path_fixed_close_path by not
adjusting current point at all, (the subsequent move_to coming right
behind the close_path will fix up the current point).
2006-08-18 06:32:12 -07:00
Carl Worth
53f74e59fa Fix close-path failure by adding explicit move_to after close_path.
Besides the bug fix, this is a user-visible change since the new
move_to element after the close_path element can be seen in the
results of cairo_copy_path, so we document that here.

We are also careful to fix up _cairo_path_fixed_line_to to defer to
_cairo_path_fixed_move_to to avoid letting the last_move_point state
get stale. This avoids introducing the second bug that is also tested
by the close-path test case.
2006-08-18 06:32:12 -07:00
Carl Worth
200a2d811e close-path: New test case to demonstrate corner case discovered by Tim Rowley
The bug shows up when doing cairo_copy_path_flat for a path that has
a curve_to immediately after a close_path. When the curve is flattened
the flattener is using (0,0) as the initial point rather than the proper
close_to point.

This test also serves to ensure a similar bug doesn't crop up when
closing a path that begins with an implicit move_to, (as from cairo_arc).
In that bug the path state may have no last-move-point and the path
is closed to (0,0). This bug is not present currently, but did appear
during the development of a fix for the bug above.
2006-08-18 06:32:11 -07:00
Behdad Esfahbod
8330f4dbd1 [ROADMAP] Mark Type1 on win32 as done 2006-08-17 22:12:21 -04:00
Behdad Esfahbod
64dd7a8203 [SVG] Make dependent on --enable-png (and increase cache-version to 2) 2006-08-17 22:10:27 -04:00
Behdad Esfahbod
6f8cf53b1e [test] Don't use signals if signal.h is not available 2006-08-17 22:03:36 -04:00
Behdad Esfahbod
474daa4493 [PNG] Include png.h after cairoint.h to avoid macro problems (bug 7744) 2006-08-17 22:03:36 -04:00
Adrian Johnson
da1019c913 Only use GGO_GLYPH_INDEX for truetype and opentype fonts on win32. 2006-08-17 21:46:38 -04:00
Carl Worth
9878a03353 Add (primitive) bitmap glyph tracing to fix bug #7889 2006-08-17 17:50:41 -07:00
Carl Worth
e4e5002c48 bitmap-font: Add cairo_text_path;fill to demonstrate bug #7889 2006-08-17 17:50:41 -07:00
Carl Worth
0bfa6d4f33 Fix assertion failures in bitmap-font test by coercing A8 images to A1
There are still some problems in the resulting output:

PDF: Rotated font ends up being blurry in final PNG (not too important)
PS and SVG: There's an incorrect offset being applied somewhere.
2006-08-17 17:50:40 -07:00
Carl Worth
e8e7ccf602 Add rotation to bitmap-font to demonstrate failure of bug #7888 2006-08-17 17:50:40 -07:00
Behdad Esfahbod
751ff78ff2 [ROADMAP] Add close_path behavior to 1.2.4. 2006-08-17 20:50:24 -04:00
Carl Worth
d7b52a8f44 Add long-lines to the XFAIL list, (we're not fixing it before 1.2.4) 2006-08-17 16:14:21 -07:00
Carl Worth
74f6afcdd6 ROADMAP: Add fix of EXTEND_PAD and deprecation of FORMAT_RGB16_565 to 1.4 roadmap. 2006-08-17 16:11:58 -07:00
Carl Worth
75b9395d07 ROADMAP: Note that source-clip-scale is fixed 2006-08-17 13:47:32 -07:00
Carl Worth
ccf60202d3 Add SVG-specific reference image for source-clip-scale test
The difference here is that the SVG backend uses a meta-surface for
its similar surface, so there are no rasterization/filtering
artefacts when scaling the source surface.
2006-08-17 13:35:16 -07:00
Vladimir Vukicevic
72e25648c4 pixman: Use pSourceClip rather than pCompositeClip when fetching
This fixes the source-clip-scale test failures for most backends.
2006-08-17 13:35:16 -07:00
Carl Worth
64d2feb9f6 Harmonize implementations of source-clip and source-clip-scale to make similarities more evident. 2006-08-17 13:35:15 -07:00
Carl Worth
524507c39f Rename src-clip test to source-clip-scale 2006-08-17 13:35:15 -07:00
Vladimir Vukicevic
afb50580ce Add src-clip test case to demonstrate bug with clipping applying to a source surface. 2006-08-17 13:35:15 -07:00
Behdad Esfahbod
540db69aef [ROADMAP] Add more entries for 1.2.4. 2006-08-17 15:28:47 -04:00
Behdad Esfahbod
6122cc85c8 [test] Add $(LDADD) to svg2png_LDADD, to link to correct cairo
Previously it was using the cairo found in system.
2006-08-16 20:07:06 -04:00
Behdad Esfahbod
30cd66fe9a [test] Add ft-text-vertical-layout-truetype. 2006-08-16 19:43:55 -04:00
Behdad Esfahbod
158e160211 [.gitignore] Add truetype-tables 2006-08-16 19:43:41 -04:00
Behdad Esfahbod
cbcf1ddd64 [test] New torture tests ft-text-vertical-layout-truetype/type1
that combine vertical layout with font_matrix rotation and translation.
Currently Type3 and Type1 font paths both show broken behavior.
The type1 test uses "Nimbus Sans L" as the font.
2006-08-16 14:27:40 -04:00
Behdad Esfahbod
c385922c19 [ROADMAP] Add two assertion failures to 1.2.4 plans 2006-08-15 14:15:47 -04:00
Behdad Esfahbod
89008ad1c7 [FreeType] Use _cairo_ft_scaled_font_is_vertical where appropriate
instead of poking at the loadflags.
2006-08-15 13:53:51 -04:00
Behdad Esfahbod
b7bc263842 [FreeType] Fix vertical metrics adjustment to work with non-identity shapes 2006-08-15 08:33:20 -04:00
Behdad Esfahbod
d47388ad75 [PS] Set correct ImageMatrix in _cairo_ps_surface_emit_bitmap_glyph_data
which should be set to device_transform_inverse, not device_transform.
Moreover, no negation is needed anymore, as that has been working around
the inverse matrix :-).
2006-08-15 07:29:18 -04:00
Behdad Esfahbod
91eb56998c [test] ft-text-vertical-layout: Update ref images 2006-08-15 05:49:21 -04:00
Behdad Esfahbod
4b3fadefc8 [FreeType] Fix comment about font coordinate 2006-08-15 05:48:12 -04:00
Behdad Esfahbod
db779b5121 [test] ft-text-vertical-layout: Use the string "i-W" to better show vertical metrics 2006-08-15 05:27:59 -04:00
Behdad Esfahbod
f183b835b1 Respect font_matrix translation in _cairo_gstate_glyph_path 2006-08-15 04:59:48 -04:00
Emmanuel Pacaud
17ec33aa4f New test for long line bug.
This shows at least an issue in cairo_fixed_from_double where values
> 32767 are converted to -32768, instead of being clamped to 32767.
2006-08-14 20:19:15 +02:00
Behdad Esfahbod
09e1eb04ca [ROADMAP] Update. Adding 1.2.4 milestone and a few other items 2006-08-14 00:15:44 -04:00
Behdad Esfahbod
c802cd2d62 [Type1] Synch comments in the encoding table 2006-08-13 20:16:22 -04:00
Pavel Roskin
e5f36a54da [Type1] Use NULL instead of 0
Using NULL is encouraged for pointers.  While fixing that, it turned out
that the comments indicating the current index were wrong, so I'm fixing
them too.
2006-08-13 05:09:28 -04:00
Pavel Roskin
fdd7518b8b Update nil surface structs to the surface struct
Quite a few fields were missing, but all zero, so didn't matter
practically, but comments were out of synch.
2006-08-13 05:02:46 -04:00
Pavel Roskin
a06af40c35 [test] Fix warnings in tests on 64-bit systems
Cast argiments from size_t to int.  size_t is 64-bit on 64-bit systems,
which causes a warning.  The actual data should fit 32 bit comfortably.
2006-08-13 04:47:11 -04:00
Pavel Roskin
58963a2bf9 [test] Allow overriding Valgrind flags on the command line
Don't hardcode Valgrind flags in tests/Makefile.am so that
tests/Makefile doesn't need to be rebuilt to use different flags.  Not
everybody is looking for memory leaks.
2006-08-13 04:44:39 -04:00
Pavel Roskin
b29cc61fac [pixman] Don't cast pointers to integers
This causes warnings on 64-bit platforms that may indicate very serious
problems.  Fortunately, not in this case.
2006-08-13 04:44:20 -04:00
Jens Granseuer
abd16e47d6 [configure] Let env-vars override backend CFLAGS/LIBS (bug 7838)
In particular, $png_REQUIRES can be used now to set the name of the pkg-config
module that contains libpng.
2006-08-11 13:06:37 -04:00
Jens Granseuer
97524a8fdb [warnings] Only use supported compiler warning flags
Also cache the result.
2006-08-11 11:51:10 -04:00
Kjartan Maraas
22eee1db00 [warnings] Fixes for sparse. This fixes a lot of instances of 0 vs NULL 2006-08-11 11:18:24 -04:00
Behdad Esfahbod
ab3b400bda [Makefile.am] Move ChangeLog creation voodoo to ChangeLog.mk 2006-08-11 00:43:24 -04:00
Behdad Esfahbod
affc9c71ac [Makefile.am] Add $(AM_MAKEFLAGS) to recursive make invocations 2006-08-11 00:24:47 -04:00
Behdad Esfahbod
c04ccc95fa [ChangeLog] Make ChangeLog creation faster by caching partial results
The ChangeLog.pre-* files once generated, cannot be outdated and don't need
update anymore, but the main ChangeLog needs update everytime a git operation
is performed (commit, checkout, etc.)  Previously, we were forcing a ChangeLog
recreation by making it a phony target.  Now, we break it into two parts:  One
up to the latest tag (as returned by git-describe), and another from there.
The former is, again, up-to-date when it exists.  The latter, we make it
depend on .git.  And since the latter is pretty short anyway, you get a very
first regeneration of it when you change your repo (and that only happens
during 'make dist' by the way.)
2006-08-11 00:11:49 -04:00