Commit graph

7375 commits

Author SHA1 Message Date
Kristian Høgsberg
f664a3b7a0 Renamed cairo-font-subset.c to cairo-truetype-subset.c 2006-08-02 19:30:55 -04:00
Adrian Johnson
a0989f427b Remove freetype dependency for truetype subsetting code.
Add a load_truetype_table function to cairo_scaled_font_backend_t and
use it to load the truetype sfnt tables.  Implement this with freetype
for the freetype font backend and use GetFontData for win32.  Atsui
remains unimplemented, and still falls back to type3 fonts.
2006-08-02 19:30:55 -04:00
Michael Emmel
c05dd48ac1 Merge branch 'master' of ssh+git://git.cairographics.org/git/cairo 2006-08-02 14:32:50 -07:00
Michael Emmel
e0bec64c98 Fixed debug statement that broke compile 2006-08-02 14:32:24 -07:00
Kristian Høgsberg
0da4b9319f Drop unused src/cairo-font-subset-private.h. 2006-08-02 15:18:56 -04:00
Adrian Johnson
067d97eb17 This patch fixes the problem where the postscript output
does not print when the size of the embedded truetype font
exceeds 64k.
2006-08-02 15:17:09 -04:00
Behdad Esfahbod
9fcb3c32c1 Set fallback resolution in create_similar. Update docs to reflect that. 2006-07-31 14:50:50 -04:00
Behdad Esfahbod
a61ac1aeed Set font_options on image surfaces we create.
This may not be really necessary as we only create image surfaces as
temporary surfaces and their font options should not be sampled normally.
2006-07-31 14:47:10 -04:00
Behdad Esfahbod
b3341b4eda Let backends return NULL in create_similar to take the fallback path.
Make xlib backend use it.
2006-07-31 14:45:54 -04:00
Behdad Esfahbod
bdb4e1edad Implement per-surface font options.
New internal function _cairo_surface_set_font_options is used to set them.
cairo_surface_create_similar propagates the font options of the other
surface into the newly created surface.  Fixes bugs with font options in
fallback images and bug 4106.
2006-07-31 14:44:42 -04:00
Behdad Esfahbod
a8a0082c53 Remove dummy create_similar in PS/PDF and let fallback do the same
which is simply creating an image surface.
2006-07-31 14:41:27 -04:00
Ian Osgood
72b51b6f0c XCB: implement set_clip_region 2006-07-31 09:59:09 -07:00
Jamey Sharp
2eeb338590 XCB: Use xcb-renderutil where cairo-xlib used libXrender. 2006-07-31 09:44:46 -07:00
Jamey Sharp
6b0d3433b7 XCB: XCBRenderTRAP was renamed to XCBRenderTRAPEZOID. 2006-07-31 08:53:57 -07:00
Carl Worth
eb9caf0833 Add -Wsign-compare compiler flag and fix all warnings 2006-07-28 22:50:06 -07:00
Behdad Esfahbod
5e0f46cdeb Standardize on unsigned for ref_count type and add CAIRO_REF_COUNT_INVALID
The CAIRO_REF_COUNT_INVALID macro simply hides the ((unsigned int)-1) cast
to avoid warnings about comparison between signed and unsigned values.
2006-07-28 15:41:11 -07:00
Behdad Esfahbod
8411494948 Move font-matrix translation and device transform from surface to gstate
Fixes the bug that paginated backends had font-matrix translation
applied twice, AND removes a second copy of the glyphs.  It's
essentially similar to what cworth did for stroke/fill/clip in
this commit: bd92eb7f3c

Reviewed by: Carl Worth
2006-07-28 15:15:15 -04:00
Behdad Esfahbod
e5f4b92261 Make "double *dash" argument const in cairo_set_dash 2006-07-27 15:20:14 -04:00
Carl Worth
456cdb3058 Elide size-zero glyphs from calls to XRender functions.
There appears to be a bug in some X servers which is triggered by
rendering 1-bit glyphs with zero size via the functions
XRenderAddGlyphs and XRenderCompositeText8 (and likely its variants).

We avoid this bug by making a copy of the glyphs array which does not
include any of the size-zero glyphs so that the X server never sees them.
2006-07-27 00:17:52 -07:00
Michael Emmel
8601c2c683 Merge branch 'master' of ssh+git://git.cairographics.org/git/cairo 2006-07-20 23:04:37 -07:00
Michael Emmel
cd2f50e6c4 Check for zero before freeing region 2006-07-20 23:01:06 -07:00
Vladimir Vukicevic
b7191885c8 [xlib] Remove XSync implementation of surface_flush
Remove the xlib implementation of surface_flush which just called XSync
before.
2006-07-17 11:33:47 -07:00
Jeff Muizelaar
fbb1758ba8 Fix degenerate-path stroking with dashed lines.
This draws dashed degenerate-paths if the dash is on at the point of the
path and otherwise draws nothing.
2006-07-15 14:44:29 -04:00
Behdad Esfahbod
84840e6bba Use font matrix offset to reposition glyph origin instead of adjusting advance
As the font matrix includes translation, which is otherwise unused for glyph
transformation, the interpretation of translation is fairly arbitrary. For
1.2.0, we choose to have this translation affect the glyph advance with the
thought that it could be used to do letter spacing/kerning. That is fairly
useless in practice, and a far more useful interpretation is to relocate
the origin of each glyph.

This patch uses the translation in the font matrix as an offset for the
glyph origin in user space. It turns out glyph extents were already correctly
shifted.

The end result with this patch is to have cairo match the 1.0 behaviour for
font matrix translations, but now we know why :-)

Explanation above courtesy of Keith Packard.
2006-07-14 21:42:41 -04:00
Michael Emmel
9907813d57 Fixed debug message to use new member name 2006-07-14 09:36:35 -07:00
Michael Emmel
307a17f78c Merge branch 'master' of ssh+git://git.cairographics.org/git/cairo 2006-07-13 12:17:25 -07:00
Michael Emmel
5ed64e3915 Rewrote to remove intermediate surfaces 2006-07-13 12:15:42 -07:00
Behdad Esfahbod
1409b8be0c Fix Name tag in backend .pc files to include "cairo-". 2006-07-13 14:33:41 -04:00
Behdad Esfahbod
510d23acef Fix doc typo. 2006-07-13 13:39:04 -04:00
Kent Worsnop
778c4730a8 PDF: Fix for dash-no-dash test case, (so that dashing can be turned off) 2006-07-13 10:22:19 -07:00
Behdad Esfahbod
f8eeca9768 Tiny doc typo fix. 2006-07-13 11:48:42 -04:00
Behdad Esfahbod
f79a9f5a52 Improve backend .pc files generation:
- Add all non-pkgconfig libs to Libs.private in cairo.pc
- Make cairo-xlib-xrender.pc Require cairo-xlib.pc
2006-07-12 04:27:55 -04:00
Behdad Esfahbod
fe647ca42b Oops. Fix doc format. 2006-07-11 15:18:14 -04:00
Behdad Esfahbod
90a46affe6 Add note to docs for some enums about possible future additions. 2006-07-11 13:36:52 -04:00
Behdad Esfahbod
e0ad1aa995 Change version number of Sun's Xorg server with buggy repeat from 60800000 to
60900000. (#7483, pointed by Brian Cameron)
2006-07-10 13:45:51 -04:00
Behdad Esfahbod
ccb54b35ed Small doc fix. 2006-07-10 10:35:42 -04:00
Behdad Esfahbod
defa23206c Fix nil surface initializations for surface type. (#7322) 2006-07-10 10:26:19 -04:00
Behdad Esfahbod
6efd145882 Better creation rules for cairo.def. 2006-07-08 17:52:24 -04:00
Behdad Esfahbod
f3f374fb80 Include cairo-svg.h in cairo_win32_api_headers. (bug 7462) 2006-07-08 16:39:52 -04:00
Behdad Esfahbod
a443a42158 Fix doc typo. 2006-07-06 23:06:14 -04:00
Behdad Esfahbod
731925f00a Fix doc syntax. 2006-07-06 23:05:13 -04:00
Behdad Esfahbod
9c37cac22b Fix typo when printing error for unsupported X formats. It was mistakenly
marking Green and Blue swapped.
2006-07-06 17:52:13 -04:00
David Reveman
807cb2fd8e Ignore color for CAIRO_OPERATOR_CLEAR in glitz backend. 2006-07-06 13:50:41 -04:00
Jonathon Jongsma
91ad3ae784 Fix documentation typo in cairo_scaled_font_get_font_options() 2006-07-04 16:23:24 -05:00
Jonathon Jongsma
94c5537924 Fix a typo in cairo_font_extents_t documentation 2006-07-04 14:58:58 -05:00
Carl Worth
cea70741e8 Add src/cairo-features.h and test/*.ps to CLEANFILES 2006-07-01 03:24:21 +02:00
Behdad Esfahbod
cfddf93afb Make CAIRO_EXTEND_REFLECT and CAIRO_EXTEND_PAD not crash on surface patterns,
but return error.
2006-07-01 02:07:28 +02:00
Carl Worth
84b06eed4e SVG: Fix leak in _cairo_svg_surface_mask 2006-07-01 00:47:59 +02:00
Carl Worth
c6c943f3cf ps: Fix to not walk off the end of the data array.
This fixes a bug recently introduced with the special case for the ~> sequence.
2006-06-30 23:00:39 +02:00
Carl Worth
e0db22c6bc ps: Fix degenerate-path test failure.
This is as simple as simply not emitting any degenerate sub-paths when the cap
style is CAIRO_LINE_CAP_SQUARE or CAIRO_LINE_CAP_BUTT.
2006-06-30 16:54:16 +02:00