Commit graph

1712 commits

Author SHA1 Message Date
Vladimir Vukicevic
49b4fe10d0 Remove ft-font's usage of device offset surface fields for storing bearings
cairo-ft-font was being naughty and storing glyph bearings in the
surface device_[xy]_offset fields -- this had no effect previously,
because _cairo_surface_composite ignored those fields, but once it
starts handling device offsets itself, this causes ft text rendering
to break.
2006-02-28 16:23:14 +01:00
Carl Worth
6fe93cbf5b Merge branch 'get-type' into cairo 2006-02-28 02:36:45 -08:00
Carl Worth
210dd59a74 Add some basic testing of cairo_font_face_get_type and
cairo_scaled_font_get_type.
2006-02-28 02:30:27 -08:00
Carl Worth
bd2136a23f Correct copyright date 2006-02-28 01:31:15 -08:00
Carl Worth
f9534c856a test/pattern-get-type: Add new test case for cairo_pattern_get_type. 2006-02-28 01:30:58 -08:00
Carl Worth
1dd6e417c1 Add testing for cairo_surface_get_type.
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-28 00:55:27 -08:00
Carl Worth
cd84e2ab32 Add documentation for cairo_font_face_get_type,
cairo_scaled_font_get_type, cairo_surface_get_type, and
cairo_pattern_get_type.
2006-02-27 23:15:45 -08:00
Carl Worth
5797f81485 Implement cairo_pattern_get_type 2006-02-27 23:12:43 -08:00
Carl Worth
5ae0b9f912 Implement cairo_surface_get_type 2006-02-27 23:11:32 -08:00
Keith Packard
2984f60a3a Need cairo_analyze_surface_get_extents 2006-02-27 20:09:24 -08:00
Keith Packard
9ca67992a5 Support meta surface patterns 2006-02-27 20:05:57 -08:00
Keith Packard
ad247974eb Release pattern source image when done with it 2006-02-27 19:34:32 -08:00
Keith Packard
59e4a32d55 Primitive ps glyph support. Fix ps strokes to not leave path defined 2006-02-27 19:23:47 -08:00
Keith Packard
06b83b89fc Support image surface patterns 2006-02-27 17:49:53 -08:00
Carl Worth
1769830e6e Implement cairo_scaled_font_get_type 2006-02-27 17:22:45 -08:00
Carl Worth
f2245a7932 Remove unused RCS $Id:$ tags. 2006-02-27 17:07:22 -08:00
Carl Worth
ce683a2402 Drop gratuitous structure with single function pointer. Rename
paginated_set_mode to set_paginated_mode.
2006-02-27 15:12:15 -08:00
Carl Worth
aecb07a26d cairo_analysis_surface: Rename region_[un]supported() to get_[un]supported(). 2006-02-27 14:58:51 -08:00
Carl Worth
2660e79e67 Rename cairo_analyze_surface_t to cairo_analysis_surface_t. 2006-02-27 14:56:41 -08:00
Keith Packard
f9d4482137 rename evaluate surface to analyze surface, pull to separate files 2006-02-27 17:14:57 -05:00
Keith Packard
cb3a445150 Primitive "real" postscript output for stroke/fill/paint 2006-02-27 19:47:14 +01:00
Vladimir Vukicevic
1a14419126 Win32: Handle BitBlt in get_image failure and AlphaBlend not being supported
If the BitBlt in get_image fails, we pretty much can't do anything -- so
fill the destination with white and hope for the best.  This enables
somewhat accurate printing of complex operations.  Also, check the
destination device caps before calling AlphaBlend; return UNSUPPORTED if
the destination DC can't do AlphaBlend.
(cherry picked from 9831de538e347a624af5b0ca38242b198b64bd45 commit)
2006-02-27 13:47:31 +01:00
Vladimir Vukicevic
2d784815ff Win32: Set surface format based on device caps
If the DC is a display DC, inspect its depth and set out local format
appropriately.  If it's not a display DC, assume RGB24.
(cherry picked from 6dd0a70d271f93df95f4bcaff5073b9bf90cecb6 commit)
2006-02-27 13:47:27 +01:00
Vladimir Vukicevic
68ed40b6da Win32: Fix up src coords before calling AlphaBlend/BitBlt to avoid invalid calls
Fixes up src coords and width/height before calling AlphaBlend/BitBlt; it's
an error to try to use a region that extents outside of the source surface
as a source DC.

Doesn't repair the extra region relative to the operator -- e.g. regions
outside of an ARGB source surface with SOURCE operator should be cleared
to fully transparent black in the destination.
(cherry picked from bc19c5b64b0e38e9d20045907d7b47d79f6afc60 commit)
2006-02-27 13:47:20 +01:00
Vladimir Vukicevic
0852cd4492 Win32: rename cairo_surface_create_dib to cairo_surface_create_with_dib
Also adds some documentation for the win32 creation functions.
(cherry picked from 3a148bd620d709237d98a72f65118759bfc5a76d commit)
2006-02-27 12:53:38 +01:00
Vladimir Vukicevic
0fe8a93d95 Win32: expose win32 DIB (image) surface creation function, and DC getter
Adds cairo_win32_surface_create_dib() for creating a win32 DIB-backed
surface with a particular format.  Also exposes
cairo_win32_surface_get_dc() to obtain the DC of a win32 surface.
(cherry picked from 0813a1b9b6f35d786fe8cb0d4748771023956cde commit)
2006-02-27 12:53:36 +01:00
Vladimir Vukicevic
f4b34df6b6 Have mark_dirty always invalidate the last clip set on the surface
mark_dirty will force cairo to set its own clip the next time the cairo clip
is applied after mark_dirty; otherwise we run the risk of cairo's cached
clip and the device clip getting out of sync if any clip-related functions
are used on the native device back-end.
(cherry picked from 1935a28949da8569f924e37714ec19571fa95987 commit)
(cherry picked from ef8b472f0ffab7b8b828d7297c7e454bb22bd5ec commit)
2006-02-27 12:24:09 +01:00
Vladimir Vukicevic
e0f4eecb91 Win32: Rework clip and extents handling
- Save extents at surface creation and always return these
- Simplify clipping paths
(cherry picked from a67722b3d7280e6c2375778c2d46556cca261bfc commit)
(cherry picked from 7ce09732a978749a4da814feb77f50161dc42c91 commit)
2006-02-27 12:23:23 +01:00
Vladimir Vukicevic
f6b4fabaf5 Misc compilation fixes (C++-style comments, M_PI decls, etc.)
(cherry picked from d0cc56b9a24fa59febc15ac5de073da0e785e1cc commit)
(cherry picked from a6a054abe45287eb950c294e20366594313138f5 commit)
2006-02-27 12:22:33 +01:00
Christian Biesinger
dba214b944 Use C-style comments rather than C++-style 2006-02-26 11:13:42 +01:00
Carl Worth
5a3c30eafe Implement cairo_font_face_get_type.
Add font type to font_face_backend.
Also export new CAIRO_FONT_TYPE_TOY.
2006-02-24 15:32:26 -08:00
Carl Worth
5928d03b49 Remove private cairo_pattern_type in favor of new public one. Rename
all values to now include TYPE. Drop _GRADIENT from LINEAR and RADIAL.
2006-02-24 15:25:19 -08:00
Carl Worth
f58f39d7af cairo.h: Fix typo (thanks to Torsten Schoenfeld) 2006-02-24 15:06:50 -08:00
Carl Worth
2fc9fd79e7 cairo.h: Fix two typos in the documentation. 2006-02-24 11:37:50 -08:00
Carl Worth
9287d60d60 Add get_type functions: cairo_surface_get_type,
cairo_pattern_get_type, cairo_font_face_get_type, and
cairo_scaled_font_get_type.
2006-02-24 11:24:03 -08:00
Carl Worth
d0e02a948e autogen.sh: Pass --foreign option to automake so that it doesn't
complain that ChangeLog does not exist.
2006-02-24 09:18:17 -08:00
Carl Worth
0354956a09 Remove ChangeLog as it is no longer maintained as a separate file (instead it is implicitly generated) 2006-02-23 20:45:30 -08:00
Christian Biesinger
07205ddc4b Mark private functions as cairo_private
(cherry picked from a1c72cd8f244e97d4b6fe3e5d3efa622c8b3f7f9 commit)
2006-02-24 01:38:27 +01:00
Christian Biesinger
b2912241f6 Add missing gradient functions to pixman-remap.h 2006-02-21 21:00:48 +01:00
Christian Biesinger
0fc25c9853 Don't call _cairo_error when returning an error
Only return it when returning a nil surface.
2006-02-18 21:45:58 +01:00
Christian Biesinger
5c5ea6d523 Fix typo. 2006-02-18 19:36:18 +01:00
Christian Biesinger
f4d9e55962 Use TRUE/FALSE instead of 1/0 for boolean values
(cherry picked from e1703520169e0cf972a6edcaa8660d14806d8c6f commit)
2006-02-16 23:56:16 +01:00
Carl Worth
57edf3f28f Normalize indentation after previous commit. 2006-02-16 09:05:52 -08:00
Carl Worth
0152bd3a56 Allow _get_bitmap_surface to work for 0x0 glyphs, (fix for bug #5734).
Patch from: Behdad Esfahbod <freedesktop@behdad.org>
Reviewed by: Carl Worth <cworth@cworth.org>
2006-02-16 09:02:29 -08:00
Carl Worth
f12aa15466 Add Mozilla patches to ROADMAP 2006-02-15 16:50:57 -08:00
Carl Worth
fd9566ebd9 Slip 1.2.0 release date out to 2006-03-08 2006-02-15 16:36:12 -08:00
Carl Worth
32ec3ccf17 Annoying churn of tmpl file. (We really need to get all of these built files out of version control.) 2006-02-15 15:40:41 -08:00
Carl Worth
d88c19071f Rename .cvsignore to .gitignore. Add *~ and *.o. 2006-02-15 15:00:26 -08:00
Emmanuel Pacaud
f4270b3dfc convert _cairo_svg_surface_old_show_glyphs to _cairo_svg_surface_show_glyphs. 2006-02-13 14:11:36 +00:00
Emmanuel Pacaud
921dcc16f9 Add mask support and switch to SVG 1.2 for compositing operators.
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-02-13 12:41:10 +00:00