Commit graph

1559 commits

Author SHA1 Message Date
Keith Packard
d157e1fcd5 Make watermark consistently translucent Use fill for dung outline Fix text locations 2006-01-25 19:17:34 +00:00
Carl Worth
3bcaab9fe1 Add a CONTROL-Q keybinding to quit. 2006-01-25 15:34:30 +00:00
Keith Packard
29479a8b12 Adopt proposed new cairo color scheme. Recolor scarab, eliminate gradient in dung Use new blue background color. Rework font sizes, use bold for titles. Change tutorial title.
reviewed by: cworth
2006-01-25 15:29:25 +00:00
Carl Worth
2d2c5fd5b0 Shrink the font size to make the tutorial instructions fit.
Format text to solve all problematic line wrapping.
Add my name to the README.
2006-01-25 14:31:17 +00:00
Carl Worth
dc64fcc68c Move the magic header files to be down in an include directory and more out of the way.
Look for the headers in -I./include.
Make the circle track the width and height of the window dynamically.
Remove boring expander example.
Add more interesting LCA exmaple.
Add some notes about how to use this stuff.
2006-01-25 10:22:32 +00:00
Carl Worth
9abe21ac70 Here's the actual template I was referring to in my previous commit.
Add a bunch more slides. Most of the text is in place now---just missing some formatting and a bunch of examples.
2006-01-25 08:41:14 +00:00
Carl Worth
649d8a0918 Add Red Hat logos to slide templates.
Add header/footer-less slide variant for slides needed an extra bit of space.
Start getting slides ready for linux.conf.au 2006 tutorial, updating for cairo 1.0 API, and adding better organization. Verify and fix all the little example shell programs.
Really remove the building of the
-pdf programs this time.
2006-01-25 07:33:56 +00:00
Carl Worth
ea9f65b0d4 A few random changes to the slides.
Remove pdf build by default, (since it is disabled by defalt in cairo 1.0.2).
Change draw interface to accept a width and height.
Fix the destroy event handler so that clicking on the window manager's 'close window' button works.
2006-01-25 02:10:23 +00:00
Behdad Esfahbod
d6ff77c297 Add cairo_scaled_font_text_extents.
New function.
Improve documentation.
2006-01-22 02:33:26 +00:00
Christian Biesinger
bfc2b49ad9 Updating BeOS reference images, the tests use a black background now. 2006-01-21 11:54:17 +00:00
Christian Biesinger
9fe4934635 Update BeOS test code per the cairo_format_t -> cairo_content_t changes. 2006-01-21 09:46:13 +00:00
Christian Biesinger
2afe78c0c2 Don't mix declarations and code. This makes the code valid ISO C, fixes a gcc -pedantic warning, and unbreaks the build with the compiler Zeta ships with. 2006-01-21 09:39:10 +00:00
Carl Worth
f1fd1cc7a9 Add getter functions for cairo_scaled_font_t. 2006-01-20 15:25:54 +00:00
Carl Worth
a6ad853ee1 Fix test to use fontconfig properly so that the test no longer fails. Fixes bug #4674. (Thnks to sunmoon1997 for the fix). 2006-01-20 15:15:40 +00:00
Carl Worth
13511972b6 Check font_face->status and return a nil scaled font if it is in an error state. (Thanks to Christian Biesinger and sunmoon1997 who pointed this out as part of bug #4674).
With this bug fix, the ft-font-create-for-ft-face test fails (as it should) since it is abusing fontconfig.
2006-01-20 14:48:07 +00:00
Carl Worth
074f886c00 Rip the cairo_content_t argument out of ps/pdf_surface_create as per discussion on cairo mailing list. Instead these surface will behave as if CONTENT_COLOR_ALPHA had been passed (that is, compositing operators will behave as if destination alpha were available).
This also has the benefit of preserving the API that has been in place for PS/PDF surface since the (experimental) stuff in 1.0.0.
Track API change.
Continue testing PS/PDF surfaces in the CAIRO_CONTENT_COLOR mode but do it by rendering to an intermediate similar surface rather than constructing the target surface differently.
2006-01-19 17:48:22 +00:00
Emmanuel Pacaud
14acc7f132 add missing header. Fix #5544. 2006-01-19 12:44:00 +00:00
Carl Worth
ec45efa57c Fix compilation-breaking typo. 2006-01-18 16:44:19 +00:00
Carl Worth
c634e54775 Change documentation to recommend cairo_paint rather than cairo_rectangle;cairo_fill for clearing a surface.
Add documentation. Add a cairo_content_t argument to PDF surface constructors.
Add documentation. Add a cairo_content_t argument to PS surface constructors.
Track changes in PS/PDF surface constructor API.
2006-01-18 16:40:17 +00:00
Carl Worth
ba69dfefa7 Fix documentation of cairo_arc which erroneously claimed M_PI radians == 90 degrees to correctly say that M_PI/2.0 radians == 90 degrees. This closes bug #5649 (with thanks to kengruven@gmail.com). 2006-01-18 09:46:42 +00:00
Carl Worth
b5c5fb613d Big change to the test infrastructure and supporting internals. The goal now is to test both a COLOR_ALPHA and a COLOR content for each surface backend, (since the semantics are different and we probably need to support both in each backend.
The PS/PDF backends don't allow a content to be passed in right now, so they fail against the rgb24 tests, but the trivial addition to the constructors will allow them to pass all tests with both content values.
And new constructors (currently internal only) to create an image surface with a cairo_content_t rather than a cairo_format_t.
Add a cairo_content_t argument to the constructor.
Add a cairo_content_t to the constructor and use this content value when constructing intermediate image surfaces in acquire_source, show_page, copy_page, and snapshot.
Add image flattening by compositing over white, as is done in cairo-ps-surface.c.
Track changes to cairo-paginates-surface which now requires a cairo_content_t value (no change to public PS/PDF constructors yet).
Track change in meta-surface and paginated-surface interfaces by now accepting a cairo_content_t rather than a cairo_format_t.
Ignore new output files (argb32 from pdf and ps as well as rgb24 from test-fallback, test-meta, and test-paginated).
Add new utility for flattening PNG images in order to generate the -argbf-ref.png images.
Add image_diff_flattened for comparing flattened output from PS and PDF backend with ARGB reference images by first blending the reference images over white.
Get rid of conditional, format-specific background-color initialization before running tests. Now uses ARGB(0,0,0,0) in all cases. Switch from specifying tests with a format value to specifying tests with a content value. Add support for a 'fake' COLOR_ALPHA_FLATTENED content for testing the PS and PDF output against a flattened version of the argb32 reference images (first blended over white).
Track change in cairo_ps_surface_create (now requires cairo_content_t value).
Adjust tests that draw in default (black) to first paint white so that the results are visible.
Adjust ARGB32 reference images for new white background for changed tests.
Adjust RGB24 reference images for new black background due to changed initialization (and the tests themselves being unchanged).
2006-01-17 16:59:08 +00:00
Christian Biesinger
0b48d620f1 Update BeOS reference images per the recent gradient changes 2006-01-15 04:44:45 +00:00
Christian Biesinger
c79cda6150 Ignore glitz-glx test output 2006-01-14 06:53:43 +00:00
Carl Worth
59eff46fdf Fix things up to conform with Adobe PostScript Document Structuring Conventions Specification. Thanks to Michael Sweet for bringing several items to our attention. Things that are fixed: Add Pages: (atend) to header, add Pages: N to trailer, properly advertise DocumentData of Binary rather than Clean7Bit, remove fictitious EndPage, move showpage to after the grestore. 2006-01-13 13:41:45 +00:00
Carl Worth
6f3cb04d9c Rip out the misguided paint-with-white and RGB24 surface code and go back to using ARGB32. It turns out that the PS backend already has its own blend-with-white code, and the test-paginated-surface really wants ARGB32. 2006-01-13 11:02:25 +00:00
Carl Worth
b4e4568962 Eliminate cast of state->dx.elements which has been wrong since the internals of cairo_array_t changed on 2005-12-21. Now, hopefully less than all text will be broken on win32. 2006-01-13 09:25:28 +00:00
Carl Worth
4e4b38e759 Add a call to cairo_copy_page, so that that gets called at least once within the test suite.
Fix broken implementation of copy_page in the paginated surface by hiding it from the target surface which sees only show_page operations. (It's hard to do better than that unless we can guarantee thathe subsequent page won't trigger any image fallbacks.)
2006-01-12 16:47:05 +00:00
Carl Worth
25882cd5e9 Add a new CAIRO_HAS_MULTI_PAGE_SURFACES automake conditional.
Remove backend-specific tests (ps-surface, pdf-surface, and pdf-clip) that are now redundant with the ps and pdf support in the rest of the test suite.
Add a new one-off test for testing show_page with both the ps and pdf backends.
2006-01-12 16:35:12 +00:00
Carl Worth
3647ff95f9 Some fixes for the fact that multi-page output was totally broken for cairo_ps_surface_t (at least):
Move the Y-axis-flipping to be on a per-page basis (as it was before and as it must be). Put page number back in, (still missing th number of pages from the header).
Add multi-page output for better testing.
2006-01-12 13:36:36 +00:00
Carl Worth
107a52ed61 Paint with white to intermediate RGB24 images before replaying meta-surface to preserve default white background instead of forcing a black background instead. 2006-01-11 16:29:17 +00:00
Carl Worth
ebeaeeccec Note that PS backend has now been switched over to use cairo_paginated_surface_t.
Switch from ARGB32 to RGB24 for intermediate image surface since that's all that the current users of cairo_paginated_surface support anyway.
Switch cairo_ps_surface_t over to use the new cairo_paginated_surface_t. This drastically simplifies the implementation, but temporarily puts the PostScript output back into the land of one-image-per-page. To be fixed soon though with improvements to cairo_paginated_surface_t. Everything still passes the test suite which is good. The test suite currently does no testing of multi-page output, which is quite bad.
2006-01-11 16:01:25 +00:00
Carl Worth
c23d7d4758 Note that from here on out, the PDF output should always pass the entire test suite!
Add new functions needed by users of cairo_paginated_surface_t.
Always snapshot a paginated surface to an image surface, rather than a surface similar to the target. We do this since paginated target surfaces are allowed to not be complete surfaces, (such as not implementing acquire_source_surface).
Switch the implementation of cairo_pdf_surface_t to use cairo_paginated_surface_t. For now this means that all PDF output is fallback images, but this can change incrementally as we go forward.
2006-01-11 11:53:33 +00:00
Anders Carlsson
953561ebbd Remove old scale matrix since it exists in our base class.
(_cairo_atsui_font_set_metrics): Fix descent calculation.
2006-01-10 07:54:17 +00:00
Anders Carlsson
ae807fc936 Add cairo-quartz-private.h
If the destination surface is a quartz surface, get the clip mask from it.
Added.
Keep a copy of the clip mask around.
(_cairo_surface_is_quartz): New function which determines if a given surface is a quartz surface.
2006-01-10 05:28:59 +00:00
Carl Worth
d6cb82c372 Add printf format attribute to cairo_test_log. 2006-01-09 17:18:12 +00:00
Anders Carlsson
ff5207ed11 Use uint32_t instead of uint; 2006-01-09 10:29:22 +00:00
Carl Worth
7ce7b20a82 Reviewed by keithp
Change the paginated surface to force all output to come from an image surface (to be refined incrementally as we hook real surface backends up to it).
2006-01-06 14:24:55 +00:00
Carl Worth
fbb8a62797 Reviewed by keithp
Implement copy_page for paginated surface. Fix show_page to destroy the meta-surface and create a new one.
Change these functions to advertise when they are not supported, so that _cairo_paginated_copy_page can implement things differently depending on whether or not it is personal.
Check return values from _cairo_surface_show/copy_page.
2006-01-06 14:11:07 +00:00
Carl Worth
88875100d6 Slip 1.2.0 projected data (again) out to 2006-01-13. Note that win32 is now incorporated into the test suite and is only failing two tests (self-copy and trap-clip). Note new progress on cairo_push/pop_group. Add item to support pango's hex-box drawing. Note that gradient computation performance has been improved. Note that experimental SVG backend has been added. 2006-01-05 15:17:02 +00:00
David Reveman
6995a83597 Gradient updates in SVG backend and no sorting of color stops in SVG or PDF backend 2006-01-05 15:00:37 +00:00
David Reveman
4215048025 Update gradient code in glitz backend 2006-01-05 05:14:14 +00:00
David Reveman
5ac6e85455 Update gradient code in PDF backend 2006-01-05 05:06:50 +00:00
Carl Worth
9737b4de39 2005-10-10 David Reveman <davidr@novell.com>
Throw away old gradient code from within cairo-pattern.c in favor of using new support in pixman for gradients.
Update reference images for all tests involving gradients since the gradient output has changed slightly.
2006-01-04 17:59:03 +00:00
Carl Worth
19441311e4 2005-10-10 David Reveman <davidr@novell.com>
Some major performance improvements to the general composite code used for gradients and transformed images. Like fetching of mask scanline before source scanline so that only the necessary pixels from source needs to be computed in case of gradients or transformed images as source. This patch also include some gradient specific fixes and performance improvement.
2006-01-04 16:39:23 +00:00
Carl Worth
305a83721f Originally: 2005-10-10 David Reveman <davidr@novell.com>
Add entries for gradient support.
Add PictureGradientColor.
Add necessary functionality for gradient support.
Enable gradient support.
2006-01-04 16:26:10 +00:00
Vladimir Vukicevic
c6cdfc5770 Clamp surface dimensions to a minimum of 1. (_cairo_glitz_surface_get_image): Set the glitz clip to NULL before calling glitz_get_pixels, to return the full surface contents. Restore clip afterwards. (_cairo_glitz_surface_composite_trapezoid): Return UNSUPPORTED if the antialias is anything other than DEFAULT/GRAY.
Try to recover a standard cairo_format_t from given pixman format masks, so that various things that only work with a standard format work correctly.
Remove cairo_glitz_surface_write_to_png, replace with generic cairo_surface_write_to_png (since it works with image-surface create_with_masks fix)
2006-01-03 09:23:48 +00:00
Vladimir Vukicevic
bd265e008b Clean up output some; show only images that fail, otherwise just show pass/fail squares. 2006-01-03 07:29:57 +00:00
Emmanuel Pacaud
71369489d8 no more has_clip boolean. Init clip_level. (_cairo_surface_intersect_clip_path): a NULL path means reset of clipping region, not back to previous clipping level. 2005-12-30 14:16:10 +00:00
Michael Emmel
23e5e55841 New directfb backend for cairo includes test suite and example to run the test is in the comment at the top of cairo-test-directfb.c enable with
--enable-directfb
2005-12-29 07:17:01 +00:00
Emmanuel Pacaud
f7236b8460 namespace declarations for SVG and XLINK (#5411). 2005-12-28 02:28:56 +00:00