Commit graph

239 commits

Author SHA1 Message Date
Carl Worth
e71e2fc4f1 Add a private cairo_paginated_surface_t which builds on top of the meta surface and is intended to provide an easy interface with common functionality for the various paginated surface types (ps, pdf, etc.).
Add test_paginated_surface_t which is another test surface enabled with --enable-test-surfaces. The test_meta_surface code served as the basis for cairo_paginated_surface_t so that test surface may be entirely superfluous now.
2005-12-21 16:46:44 +00:00
Carl Worth
5280c09b7d Fix indentation. 2005-12-21 12:08:57 +00:00
Carl Worth
75b2fe93f0 Use _cairo_surface_paint rather than _cairo_surface_fill_rectangle as only the former is guaranteed to work with all backends.
Refine the comment describing this test surface.
Add new test surface for exercising cairo_meta_surface.
Simplify the image and test_fallback targets by not using create_for_data. Allow for NULL cleanup target functions. Add support for the test_meta_surface.
2005-12-19 22:01:39 +00:00
Emmanuel Pacaud
ffe10b7c87 Shhhh... 2005-12-19 14:18:06 +00:00
Emmanuel Pacaud
ec574cd6f0 CAIRO_CAN_TEST_SVG_SURFACE depends on librsvg.
cairo_svg_surface_t owns a xml node, for support of svg_surface_composite. (_cairo_svg_surface_create_for_document): init xml_node. All surfaces except first one are stored in defs node. (emit_composite_image_pattern): returns pattern size, and don't call emit_transform if is_pattern == TRUE. (emit_composite_svg_pattern): do something. (emit_composite_pattern): returns pattern size. (_cairo_svg_surface_composite): xml_node is stored in cairo_svg_surface_t now. (emit_surface_pattern): emit surface pattern width here. Fix property names. (_cairo_svg_path_close_path): don't close path if no current point. (_cairo_svg_surface_fill_rectangles): new. (_cairo_svg_surface_fill): emit fill rule. xml_node is in surface now. (_cairo_svg_surface_composite_trapezoids): xml_node is in surface now. (_cairo_svg_surface_stroke): ditto. (_cairo_svg_surface_intersect_clip_path): ditto. Emit fill rule.
ignore svg2png.
build svg2png utility.
test SVG backend if CAIRO_HAS_SVG_SURFACE && CAIRO_CAN_TEST_SVG_SURFACE.
new.
2005-12-19 13:59:34 +00:00
Christian Biesinger
6142bc5348 Mention new --enable-svg option
Add notes for the new BeOS backend
Add disabled by default BeOS backend
Add BeOS files
New
New
BEOS_SURFACE_FEATURE
BeOS mutex functions
Ignore files generates by the BeOS tests
Add cairo-test-beos.*
New.
Test BeOS backend.
2005-12-18 17:20:06 +00:00
Carl Worth
c75232f8ab Add a new option --enable-test-surfaces.
New surface backend for testing only. It has as many NULL backend entries as possible.
Add support to test the new test_fallback backend.
2005-12-16 11:31:10 +00:00
Christian Biesinger
6ba7772138 Globally rename "operator" to "op", to allow writing backends in C++
reviewed by: cworth
2005-12-16 03:02:35 +00:00
Stuart Parmenter
88615148ca #define access _access and #define F_OK to 0 on for MSVC
add CAIRO_BEGIN_DECLS and CAIRO_END_DECLS
2005-12-14 19:56:09 +00:00
Carl Worth
77540a2dfa Add preliminary support for --enable-gcov. Thanks to Pierre-Alain Joye (with inspiration from the PHP gcov support by Jani Taskinen and Ilia Alshanetsky).
Ignore *.gcda and *.gcno gcov data files.
2005-12-14 16:22:06 +00:00
Vladimir Vukicevic
c2c4f0bb25 bump glitz req to 0.5.1, test for backends
Add glitz backend (original patches from sunmoon1997@gmail.com), including glx, wgl, and agl support. Add CAIRO_TEST_TARGET environment variable for limiting backends to test.
Takes all *.log files and spits out html to stdout that can be used to view all test results at once.
2005-12-12 11:56:40 +00:00
Emmanuel Pacaud
840f93698d shhh... 2005-12-08 13:22:09 +00:00
Emmanuel Pacaud
b2f973e7f4 add optionnal disabled by default SVG backend.
include SVG backend files.
include SVG_SURFACE_FEATURE.
rename dtostr to _cairo_dtostr for use in cairo-svg-surface.c.
_cairo_dtostr declaration.
new.
new.
build svg-surface and svg-clip.
new.
new.
2005-12-08 13:09:26 +00:00
Carl Worth
45c350e328 Add checks for poppler and friends which are needed by pdf2png. Set CAIRO_CAN_TEST_PDF_SURFACE as both a #define and an automake conditional.
Build pdf2png if possible.
Add support for testing the PDF backend.
New utility program to convert a PDF file into a PNG image using poppler (thanks to Kristian Høgsberg).
Ignore new stuff generated by PDF backend testing.
2005-12-07 16:06:11 +00:00
Carl Worth
96be55124f Fix to check cairo_surface_status rather than !surface which is always false. (cleanup_ps): Fix leak of filename memory. 2005-12-07 11:53:30 +00:00
Stuart Parmenter
49136c04f2 Hooked up tests to run on Windows with a Windows surface 2005-11-17 11:55:20 +00:00
Carl Worth
5b6c912667 Note that PS is now passing all tests except for self-copy.
Add missing glue to hook up PS backend with new meta-surface support for the 5 basic drawing operations. Currently, this forces image fallbacks for all operations.
Switch from gs device of pngalpha to png16m which for some reason gives the correct result for nil-surface now, while pngalpha does not.
Key off of N_OPERATORS as the loop control for easier trimming down of this test case when debugging.
Rename stroke_style parameter to style in backend->stroke parameter list.
Remove PS-specific reference images for many tests which are now using more fallback paths than before.
2005-11-08 17:43:13 +00:00
Carl Worth
d93767c6ee Add reference images for antialiasing modes which are basically not applicable to the PS output. 2005-10-18 12:04:41 +00:00
Carl Worth
99d02f2adc Add verified image for PS output for dash-offset-negative. 2005-10-13 21:04:28 +00:00
Carl Worth
31a561e2c2 Push fill_path fallbacks down from gstate into the surface where all the other fallbacks are.
Add _cairo_surface_is_meta.
Add antialias to the fill_path meta-surface command.
Add an antialias parameter to the backend fill_path function.
Fix test description.
Reviewed by: keithp
2005-10-13 16:55:14 +00:00
Carl Worth
1fa004f2a6 Add extend-reflect to the 1.2.0 roadmap. Mark dashed splines and clip-all as fixed.
Mark extend-reflect as an expected failure.
2005-10-12 14:23:11 +00:00
Carl Worth
7dcbcdf75c Add a couple of tests to improve our coverage (clipping under both fill rules). 2005-10-12 13:37:00 +00:00
Kristian Høgsberg
f39816e016 Transform source pattern for _cairo_surface_fill_path() also (#4673).
Use cairo_fill_preserve() instead of cairo_save()/cairo_restore().
Add missing return values.
2005-10-10 09:36:39 +00:00
Billy Biggs
b207dfe822 Add a new test to start investigating bug 4183.
The new test.
Ignore the new test.
2005-10-09 14:51:55 +00:00
Carl Worth
951c7a6592 Make surface image data static to work around a bug in cairo-meta-surface.c (not copying source surface pattern data). 2005-10-09 13:33:21 +00:00
Carl Worth
e26dbd9500 Add ps-backend-specific reference images for test for which the current output is fine, but just happens to not be identical to the existing reference images, (ie. just minor differences shape-boundary pixels). 2005-10-08 13:04:18 +00:00
Carl Worth
94dece56a5 Ignore output of PS tests.
Fix the PS tests to work again, (track change in create_surface interface).
2005-10-08 11:58:20 +00:00
Carl Worth
74af57339c Add missing initialization for ximage.xoffset. 2005-10-06 11:32:54 +00:00
Keith Packard
d3e7dad53e Add rgb24 surface tests, support per-target reference images and support PS surface testing
reviewed by: cworth
2005-09-29 14:31:08 +00:00
Carl Worth
abaf346810 Note that bug #4409 (Dashes are missing initial caps) is now fixed.
Move face-flipping from inside _cairo_stroker_add_caps to new _cairo_stroker_add_leading_cap variant of _cairo_stoker_add_cap.
Change to call _cairo_stroker_add_leading_cap or _cairo_stroker_add_trailing_cap as appropriate.
Remove dash-caps-joins from the XFAIL list and add reference image.
2005-09-27 12:44:32 +00:00
Carl Worth
8a6792fe41 Add two test cases. One for caps and joins (passes), and one for dashed caps and joins, (fails, see bug #4409). 2005-09-27 11:35:18 +00:00
Carl Worth
8fc9e099fd Avoid attempting to create a size-0 Pixmap, (to prevent the associated X error). This actually showed up when the clip region is empty. Thanks to Radek Doulík for the bug report.
Remove clip-all from the XFAIL list since it works now.
2005-09-19 17:24:52 +00:00
Carl Worth
e8708af118 Adjust parameters to stress things a bit more, (better exposing another locking bug). 2005-09-13 12:37:45 +00:00
Carl Worth
258f6f4903 Add documentation for cairo_test functions.
Abstract log fie creation into cairo_test_init for use by tests that don't use cairo_test().
Add new test for bug #4299 as reported by Alexey Shabalin.
2005-09-13 12:11:32 +00:00
Carl Worth
7e4465819b Add includes to get sized-integer types such as uint32_t.
Fix declaration of image data array to be uint32_t rather than unsigned long. Fixes four out of the remaining five failures in bug #4245.
2005-09-01 02:14:31 +00:00
Carl Worth
0f4beab507 Add call to XSynchronize, (the expected clip-all failure isn't occuring without it for some reason).
Note reason for expected failure.
src/cairo-scaled-font.c: Add an optional text_to_glyphs() virtual function that the backend can implement instead of ucs4_to_index().
Protect inclusion of fontconfig.h with HAVE_FCFINI.
2005-08-31 19:11:22 +00:00
Carl Worth
f25ebec368 Add call to XSynchronize, (the expected clip-all failure isn't occuring without it for some reason).
Note reason for expected failure.
2005-08-31 16:17:28 +00:00
Keith Packard
b0c58593b3 Split out scaled font code to cairo-scaled-font.c
Replace cairo cache implementation (this code from cworth)
No more global glyph cache to clean up
Store glyphs in new per-scaled font caches which hold user-space metrics and device space bounding boxes
Refactor glyph drawing APIs so that the surface API is invoked directly from the gstate code.
Add path creation/destruction routines (to hold glyph paths)
New implementation of scaled fonts which uses per-scaled_font caches for glyphs and keeps user-space metrics, device-space bboxes along with glyph images and/or glyph paths.
Adapt to new scaled font API changes.
New cache and scaled_font APIs
Repond to bug fix in metrics computation for glyphs where y values were rounded up instead of down because of a sign difference between cairo and FreeType.
Reviewed by: otaylor, cworth
2005-08-31 15:08:02 +00:00
Carl Worth
eb2316ecc7 Fix test to not try to set a non-invertible matrix. (We'd gotten away with this due to round-off error on many systems). Fixes one out of six failures in bug #4245. 2005-08-31 13:33:42 +00:00
Carl Worth
464c6dffcf Add Radek Doulík.
Add test exposing a BadValue (0-size pixmap) bug in cairo-xlib-surface when everything is clipped away (thanks to Radek Doulík <rodo@novell.com>).
2005-08-31 09:00:01 +00:00
Carl Worth
77a0ae7439 Fix cairo_show_text to advance the current point. Add documentation for cairo_show_text.
Add test to verify that the current-point-advancing behavior of cairo_show_text is working.
Remove bug about cairo_show_text not advancing the current point.
2005-08-24 01:13:36 +00:00
Carl Worth
ee3e72e6a9 Add suppression for uninitialized data in fbBltOne. 2005-08-23 19:34:20 +00:00
Carl Worth
2dfb7a662f Fix memory leak of pattern. 2005-08-23 14:37:09 +00:00
Owen Taylor
f229b1abfb when creating the temporary mask, do glyph ADD mask, not (glyph IN source) ADD mask. Set the mask as having component alpha when it's 4-channel.
test/text-antialias-subpixel.c test/Makefile.am: No longer XFAIL.
test/text-antialias-gray.c test/text-antialias-subpixel.c
Don't turn off metrics hinting, it doesn't make sense.
Update.
2005-08-23 13:34:14 +00:00
Carl Worth
317af5618c Fix inadvertent commit of incorrect reference image 2005-08-23 10:55:00 +00:00
Carl Worth
9aa1f4d868 Clear to opaque white at the beginning of the test so that the 0 alpha values in the destination don't cause bizarre results. (main): Note that only the image backend should fail now.
Add new reference image.
2005-08-23 10:39:27 +00:00
Carl Worth
9e68e0ceef Add more comments on the improved state of this bug. Commit a reference image generated with cairo_text_path; cairo_fill. (We may not require getting this exact result, but I think it is worth examining the differences closely.) 2005-08-23 10:11:16 +00:00
Carl Worth
60f9c8d9fd Remove caps-sub-paths from the XFAIL list since it is fixed now. 2005-08-23 07:51:56 +00:00
Owen Taylor
099060f925 Some fixes for warnings from sparse (Part of #4208, Kjartan Maraas)
Use NULL, not 0.
Fix C99'ism of mixed code and declarations.
2005-08-23 05:18:48 +00:00
Carl Worth
eb206f0a12 Use the expect_failure variant of cairo_test so that make check prints the reason this test fails. 2005-08-23 01:50:25 +00:00