Commit graph

37 commits

Author SHA1 Message Date
Graydon Hoare
23026d5ab6 Add sanity checking feature configury.
Add sanity checking feature.
Add sanity checking.
Add prototypes.
New functions.
New function.
Use fixed functions. (_cairo_gstate_clip): Arithmetic fixes. (_cairo_gstate_clip_and_composite_trapezoids): (_cairo_gstate_show_surface): (_cairo_gstate_show_text): (_cairo_gstate_show_glyphs): Corrections to clipping.
Add XCopyArea fast path. (_cairo_xlib_surface_set_clip_region): Drive clip to drawable.
2004-05-20 16:42:56 +00:00
Carl Worth
aab2fe8c05 Do nothing when passed a NULL string. 2004-05-17 08:03:17 +00:00
David Reveman
e309090d2a Added new pattern API 2004-04-06 09:36:12 +00:00
Graydon Hoare
94551db67c Add.
finalize and copy clip.region. Detect rectangular clips and push down to backend.
Add set_clip_region slot. (cairo_clip_rec_t): Add region slot. (_cairo_gstate_init_clip) (_cairo_surface_set_clip_region): Prototype.
Add.
Add.
Add.
not implemented.
2004-03-19 15:47:25 +00:00
Carl Worth
122b2d8504 Bump version to 0.1.18. Includes new functions cairo_current_path, cairo_current_path_flat, cairo_surface_get_filter. Support for XCB backend. Fixes for building in cygwin. Adds cairo_surface_get_filter.
Add new path query functions.
Implement support for cairo_current_path and cairo_current_path_flat. These functions just provide an interface to _cairo_path_interpret and take care of mapping from device space back to user space.
2004-02-17 18:38:23 +00:00
Carl Worth
fb93261e37 Bump version to 0.1.17 for new functions: cairo_text_extents, cairo_glyph_extents, cairo_text_path, cairo_glyph_path.
Re-enable cairo_text_path and cairo_glyph_path.
Add missing transformation.
Initial implementation of glyph_path.
2003-12-16 07:20:20 +00:00
Carl Worth
39bb4f1d99 Need to divide out the scale factor to return user-space extents. (_cairo_gstate_glyph_extents): Don't transform glyph locations as they're not relevant to extents.
Clean up implementation. (_cairo_ft_font_glyph_extents): Initial implementation. Thanks to John Ellson <ellson@research.att.com> for most of the work on this function. (_cairo_ft_font_show_text): Clean to use num_glyphs not nglyphs.
Re-enable cairo_text/glyph_extents.
2003-12-15 18:26:51 +00:00
Andrew Chant
18ae004832 cairo_select_font: _cairo_font_create: _cairo_gstate_select_font: cairo_ft_font_create: change char * family to const char * family 2003-12-11 11:12:59 +00:00
Carl Worth
f27af5d98d Remove infinite looping when stroking with a line width at or close to 0.0. Thanks to Rob Buis <buis@kde.org> and Noah Levitt <nlevitt@columbia.edu> for providing in-the-wild examples of SVG files with stroke-width:0 that demonstrated the problem, (cowboy.svg and albania.svg).
Do nothing if the pen is a degenerate, single point. This happens when the line width is a very small, non-zero value.
Do nothing when asked to stroke a path with a line_width of 0.0. Previously, this would lead to an infinite loop.
Force negative line width to 0.0.
Updated TODO list.
2003-11-17 07:04:15 +00:00
Carl Worth
f86a979b49 Bumped version to 0.1.12 for new cairo_in_stroke and cairo_in_fill functions.
Added new cairo_in_stroke and cairo_in_fill.
* src/cairo_gstate.c (_cairo_gstate_in_stroke): (_cairo_gstate_in_fill): New functions to support for cairo_in_stroke and cairo_in_fill. Many thanks to Thomas Hunger <info@teh-web.de> for the initial implementation which demonstrated how easy this would be and pushed me to go and write it already.
Fixed to use _cairo_fixed_from_double instead of XDoubleToFixed.
2003-11-06 18:33:28 +00:00
Carl Worth
a3ad052795 Move declaration to beginning of function to avoid requiring a C99-compatible compiler. 2003-11-06 13:32:15 +00:00
Carl Worth
7765a3c676 Add support for cairo_copy_page. Fixes so PS output can be more than one page. Bump version to 0.1.11 for new cairo_copy_page. 2003-11-03 19:17:31 +00:00
Carl Worth
c6255f9c29 Implemented preliminary PostScript output support. Added cairo_show_page. Bumped version number to 0.1.10 2003-10-31 21:30:35 +00:00
Carl Worth
32df4d217d Moved all libic-related drawing into cairo_image_surface.c 2003-10-31 10:41:37 +00:00
Carl Worth
965ab2ff55 Fixes to eliminate a few compiler warnings. Bump version to 0.1.8 for recent font API changes. 2003-10-24 11:01:37 +00:00
Graydon Hoare
c11a49a69e New file.
Add cairo_ft_font.c
Change to virtual font interface.
2003-10-23 15:22:28 +00:00
Carl Worth
2c9d1913cc Fixed copyright attribution to refer to "University of Southern California 2003-10-23 07:47:29 +00:00
Carl Worth
a249bd717c Remove abbreviation of "point" as "pt". Fix cairo_destrot, cairo_set_target_surface, and cairo_set_target_image to act appropriately in the face of non-zero status. 2003-10-04 09:06:15 +00:00
Jamey Sharp
973ee89983 Virtualized the font and surface backend implementations. 2003-09-30 18:56:22 +00:00
Carl Worth
9c964b8f8a Don't copy a gstate if src->status != 0 2003-09-30 14:15:28 +00:00
Carl Worth
b1ade55559 Fixed horribly botched implementation of cairo_copy. 2003-09-30 13:15:09 +00:00
Carl Worth
0cd47881bd Changed cairo_copy to copy graphics state from one cairo_t to another rather than allocating a new cairo_t. 2003-09-30 11:39:07 +00:00
Carl Worth
6f87c8bc6c Added cairo_arc and cairo_arc_negative. 2003-09-29 08:36:29 +00:00
Carl Worth
4dc8b3a312 Removed support for cairo_path_t and related functions. Bumped version to 0.1.5 2003-09-25 15:01:28 +00:00
Carl Worth
ca1cec0f49 Expose a cairo_path_t object with related functions: cairo_set_path, cairo_current_path, cairo_path_move_to, cairo_path_line_to, etc. 2003-09-25 08:01:38 +00:00
Carl Worth
7e46e8e6ca Add cairo_reference and cairo_surface_reference 2003-09-16 06:45:19 +00:00
Carl Worth
9c5be2cf31 Fix for invalid restore from keithp. Began adding notes on arc support. 2003-09-15 07:55:10 +00:00
Carl Worth
e540d4c44f Updated calls to slim_hidden_def to track changes in slim 0.2.0 2003-09-09 17:38:10 +00:00
Carl Worth
67275336bf Added cairo_copy. Bumbed version to 0.1.2. 2003-09-05 08:35:08 +00:00
Carl Worth
c25eea6f10 Fixed bugs if cairo_stroke/fill called before cairo_set_rgb_color or cairo_set_target. Also fixed bug when cairo_set_rgb_color is called before cairo_set_target. 2003-09-04 16:27:34 +00:00
Carl Worth
b9c3be7678 Changed names of all cairo_get_* functions to cairo_current_*. Added magic DEPRECATE macro so that using the old names will give useful warnings/errors. Bumped version number to 0.1.1 2003-09-04 06:52:01 +00:00
Carl Worth
1568c818da Add implementation of cairo_get_matrix 2003-09-03 07:14:18 +00:00
Richard Henderson
9289e8a77a Depend on slim.
Check for slim.
Include slim_{export,import}.h as needed; mark all symbols __external_linkage.
Include slim_internal.h; mark all symbols __internal_linkage. Provide slim_hidden_proto symbols as needed.
Provide slim_hidden_def symbols as needed.
Mark static. (cairo_traps_add_trap_from_points): Likewise.
2003-07-31 22:41:44 +00:00
Carl Worth
b86e8f5a0c Fixed a disagreement over whether some internal cairo_gstate_t functions had an '_' prefix or not. 2003-07-30 10:48:27 +00:00
Carl Worth
e97cfd5eae Made all changes necessary to abandon the Xc library, (sucking the functionality up into cairo_surface_t instead). Eliminated most of the remaining X datatypes (XFixed, XPointFixed, XLineFixed, XTrapezoid). Fixed some numerical problems relating to pen initialization and intersection calculation. 2003-07-30 08:30:50 +00:00
Carl Worth
ee146c4740 Introduced cairo_fixed_*_t types. Converted several functions from floating to fixed point. 2003-07-23 21:20:24 +00:00
Carl Worth
dc1e96ae35 Renamed everything from Xr* to cairo_* 2003-07-18 11:34:19 +00:00