summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2006-02-28Add testing for cairo_surface_get_type.Carl Worth4-3/+25
All test targets now list an expected cairo_surface_type_t. Add notes on current limitations of PDF/PS/meta-surface support that causes CAIRO_CONTENT_COLOR similar surfaces of PDF and PS surfaces to be returned as image surfaces. Add cairo_internal_surface_type_t for the meta, paginated, and various test surfaces.
2006-02-27Add documentation for cairo_font_face_get_type,Carl Worth4-0/+24
cairo_scaled_font_get_type, cairo_surface_get_type, and cairo_pattern_get_type.
2006-02-27Implement cairo_pattern_get_typeCarl Worth1-0/+6
2006-02-27Implement cairo_surface_get_typeCarl Worth13-0/+42
2006-02-27Implement cairo_scaled_font_get_typeCarl Worth5-0/+11
2006-02-24Implement cairo_font_face_get_type.Carl Worth6-0/+14
Add font type to font_face_backend. Also export new CAIRO_FONT_TYPE_TOY.
2006-02-24Remove private cairo_pattern_type in favor of new public one. RenameCarl Worth8-68/+61
all values to now include TYPE. Drop _GRADIENT from LINEAR and RADIAL.
2006-02-24cairo.h: Fix typo (thanks to Torsten Schoenfeld)Carl Worth1-1/+1
2006-02-24cairo.h: Fix two typos in the documentation.Carl Worth1-2/+2
2006-02-24Add get_type functions: cairo_surface_get_type,Carl Worth2-3/+134
cairo_pattern_get_type, cairo_font_face_get_type, and cairo_scaled_font_get_type.
2006-02-24Mark private functions as cairo_privateChristian Biesinger2-8/+8
(cherry picked from a1c72cd8f244e97d4b6fe3e5d3efa622c8b3f7f9 commit)
2006-02-18Don't call _cairo_error when returning an errorChristian Biesinger1-19/+7
Only return it when returning a nil surface.
2006-02-18Fix typo.Christian Biesinger1-1/+1
2006-02-16Use TRUE/FALSE instead of 1/0 for boolean valuesChristian Biesinger1-5/+5
(cherry picked from e1703520169e0cf972a6edcaa8660d14806d8c6f commit)
2006-02-16Normalize indentation after previous commit.Carl Worth1-157/+155
2006-02-16Allow _get_bitmap_surface to work for 0x0 glyphs, (fix for bug #5734).Carl Worth1-7/+4
Patch from: Behdad Esfahbod <freedesktop@behdad.org> Reviewed by: Carl Worth <cworth@cworth.org>
2006-02-15Rename .cvsignore to .gitignore. Add *~ and *.o.Carl Worth1-0/+2
2006-02-13convert _cairo_svg_surface_old_show_glyphs to _cairo_svg_surface_show_glyphs.Emmanuel Pacaud1-14/+8
2006-02-13Add mask support and switch to SVG 1.2 for compositing operators.Emmanuel Pacaud1-208/+86
return xml node instead of cairo status. (emit_composite_svg_pattern): ditto. (emit_composite_pattern): ditto. (emit_operator): use SVG 1.2 operators, since feComposite filter always composite resulting surface to current canvas. (_cairo_svg_surface_composite): removed. (_cairo_svg_surface_fill_rectangles): removed. (intersect): removed. (_cairo_svg_surface_composite_trapezoids): removed. (emit_paint): new. (_cairo_svg_surface_paint): new. (_cairo_svg_surface_mask): new. (_cairo_svg_surface_stroke): emit operator.
2006-01-29fix offset of pattern stops.Emmanuel Pacaud1-4/+2
2006-01-22Add cairo_scaled_font_text_extents.Behdad Esfahbod2-4/+56
New function. Improve documentation.
2006-01-21Don't mix declarations and code. This makes the code valid ISO C, fixes a ↵Christian Biesinger1-2/+3
gcc -pedantic warning, and unbreaks the build with the compiler Zeta ships with.
2006-01-20Add getter functions for cairo_scaled_font_t.Carl Worth2-1/+91
2006-01-20Check font_face->status and return a nil scaled font if it is in an error ↵Carl Worth1-1/+4
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-19Rip the cairo_content_t argument out of ps/pdf_surface_create as per ↵Carl Worth4-48/+7
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-18Fix compilation-breaking typo.Carl Worth1-2/+4
2006-01-18Change documentation to recommend cairo_paint rather than ↵Carl Worth5-26/+131
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-18Fix documentation of cairo_arc which erroneously claimed M_PI radians == 90 ↵Carl Worth1-2/+2
degrees to correctly say that M_PI/2.0 radians == 90 degrees. This closes bug #5649 (with thanks to kengruven@gmail.com).
2006-01-17Big change to the test infrastructure and supporting internals. The goal now ↵Carl Worth16-64/+181
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-13Fix things up to conform with Adobe PostScript Document Structuring ↵Carl Worth1-16/+9
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-13Rip out the misguided paint-with-white and RGB24 surface code and go back to ↵Carl Worth1-24/+4
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-13Eliminate cast of state->dx.elements which has been wrong since the ↵Carl Worth1-1/+3
internals of cairo_array_t changed on 2005-12-21. Now, hopefully less than all text will be broken on win32.
2006-01-12Add a call to cairo_copy_page, so that that gets called at least once within ↵Carl Worth1-21/+8
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-12Some fixes for the fact that multi-page output was totally broken for ↵Carl Worth1-20/+52
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-11Paint with white to intermediate RGB24 images before replaying meta-surface ↵Carl Worth1-1/+21
to preserve default white background instead of forcing a black background instead.
2006-01-11Note that PS backend has now been switched over to use ↵Carl Worth2-545/+219
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-11Note that from here on out, the PDF output should always pass the entire ↵Carl Worth3-9/+53
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-10Remove old scale matrix since it exists in our base class.Anders Carlsson1-11/+7
(_cairo_atsui_font_set_metrics): Fix descent calculation.
2006-01-10Add cairo-quartz-private.hAnders Carlsson4-18/+115
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-06Reviewed by keithpCarl Worth1-2/+22
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-06Reviewed by keithpCarl Worth4-11/+83
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-05Gradient updates in SVG backend and no sorting of color stops in SVG or PDF ↵David Reveman2-59/+34
backend
2006-01-05Update gradient code in glitz backendDavid Reveman1-15/+15
2006-01-05Update gradient code in PDF backendDavid Reveman1-15/+15
2006-01-042005-10-10 David Reveman <davidr@novell.com>Carl Worth4-473/+181
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-03Clamp surface dimensions to a minimum of 1. ↵Vladimir Vukicevic2-3/+72
(_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)
2005-12-30no more has_clip boolean. Init clip_level. ↵Emmanuel Pacaud1-6/+6
(_cairo_surface_intersect_clip_path): a NULL path means reset of clipping region, not back to previous clipping level.
2005-12-29New directfb backend for cairo includes test suite and example to run the ↵Michael Emmel4-1/+874
test is in the comment at the top of cairo-test-directfb.c enable with --enable-directfb
2005-12-28namespace declarations for SVG and XLINK (#5411).Emmanuel Pacaud1-1/+4
2005-12-26Implement composite for the beos backend. Don't map CAIRO_OPERATOR_ADD to ↵Christian Biesinger1-1/+98
B_OP_ADD for now, something's broken there.