Commit graph

1291 commits

Author SHA1 Message Date
Carl Worth
25e0acfee0 PDF: Fix display of bitmapped glyphs (bitmap-font test now passes) 2006-06-21 17:23:35 -07:00
Carl Worth
b4720ca51d PDF: Push glyph stream creation down from emit glyph to outline/bitmap variants 2006-06-21 16:59:29 -07:00
Behdad Esfahbod
83a8a50735 Pass --cache-file=config.cache and --disable-static to configure from
autogen.sh.
2006-06-21 19:57:40 -04:00
Behdad Esfahbod
c88bab66ab Make configure generate cairo-features.h. Generate AC_DEFINE and AM_CONDITIONALS
for all CAIRO_HAS_*  in CAIRO_BACKEND_ENABLE.
2006-06-21 07:05:13 -04:00
Carl Worth
c6c1da2a23 PS: Add support for emitting bitmapped glyphs into type3 fonts.
The bitmap-font now passes when run against the ps backend.
2006-06-20 17:49:05 -07:00
Carl Worth
ab8ae66f9d SVG: Fix to not crash on bitmapped glyphs
This is similar to a change that was recently made to the PDF and PS backends.
Bitmap glyphs are not yet drawn correctly, (drawn as filled rectangles instead),
but the crash is at least eliminated.
2006-06-20 17:15:07 -07:00
Carl Worth
2f43a79e4e ft-font: Use compile-time test (WORDS_BIGENDIAN) rather than run-time function to test endian-ness. 2006-06-20 11:28:23 -07:00
Carl Worth
b806b50cfe Add new CAIRO_BITSWAP8 macro for swapping the bits within a byte.
This uses a technique devised by Sean Anderson, July 13, 2001 as found
at http://graphics.stanford.edu/~seander/bithacks.html#ReverseByteWith32Bits
This technique uses 3 multiplies rather than just shifts and masks, but
performance seems comparable to the old approach, (but more significantly,
the new approach is easier to implement as a macro, and I plan to start
using this bit-swapping elsewhere very soon).
2006-06-20 10:59:22 -07:00
Carl Worth
3465ae1c58 output-stream: Support %X in addition to %x 2006-06-20 10:43:53 -07:00
Kristian Høgsberg
bb11980f14 Add 'x' case to printf switch so we actually implement %02x. 2006-06-20 02:16:48 -04:00
Carl Worth
7026e24548 PS PDF: Drop unused hex_digit functions, (now that output stream supports %02x) 2006-06-19 21:15:26 -07:00
Kristian Høgsberg
cd5e08a9fe Implement 0-padding and field width for _cairo_output_stream_printf().
Use it instead of %c%c in PS and PDF surfaces.
2006-06-19 22:44:39 -04:00
Carl Worth
a3f2d92f11 PDF: Don't fallback due to CAIRO_ANTIALIAS_NONE
This was a gratuitous thing that was causing excessive fallbacks in
mozilla printing to PDF. The only reason it was ever there was to
get some of the tests that rely on CAIRO_ANTIALIAS_NONE to pass.
Instead we now simply don't run those tests against the PDF backend.
2006-06-19 11:03:32 -07:00
Jinghua Luo
fde08da55f freetype: Don't ignore antialias in some cases. 2006-06-19 14:49:46 +08:00
Jinghua Luo
c9de7b1286 freetype: Compare all elements in ft_options but not use memcmp. 2006-06-19 14:17:24 +08:00
Jinghua Luo
e4736fcf76 freetype: Clear target mode correctly in _cairo_ft_options_merge. 2006-06-18 23:50:51 +08:00
Jinghua Luo
1e0e56e022 freetype: Fix warnings in _decompose_glyph_outline. 2006-06-18 17:30:39 +08:00
Jinghua Luo
117b062756 freetype: cleanup _cairo_ft_scaled_glyph_init. 2006-06-18 17:26:19 +08:00
Jinghua Luo
54b4a2fccd freetype: Respect configurations in font pattern.
cairo freetype font backend doesn't handle fontconfig configurations
quiet well, it always renders glyphs using configurations in
scaled_font->base.options which usually isn't corresponding to
font pattern used to create the font face and the load flags. As a
result, turning antialias off with fontconfig doesn't work with cairo
HEAD, subpixel order either.

This commit make cairo respect configurations in font pattern and handle
load flags correctly. The ft-text-antialias-none test case passess now.
And should fix bug #6759 and #4792.
2006-06-18 17:20:38 +08:00
Jinghua Luo
efaf88d409 Add missing prototype for _cairo_lzw_compress. 2006-06-17 15:52:05 +08:00
Ian Osgood
6f0a85c8f7 Update the XCB backend for screen sensitivity. 2006-06-16 22:43:49 -07:00
Behdad Esfahbod
8bc05f15ab Note that create_similar clears surface. 2006-06-16 18:39:36 -04:00
Carl Worth
c6164d0d2a New API: Add support for new CAIRO_FORMAT_RGB16_565 2006-06-16 08:46:34 -07:00
Jinghua Luo
36e59ca5f8 xlib: free resources before return if looking up glyph surface fails. 2006-06-16 21:13:21 +08:00
Kristian Høgsberg
b8231f8949 Add cairo-output-stream-private.h to libcairo_la_SOURCES.
We now pass distcheck again.
2006-06-15 22:07:17 -04:00
Carl Worth
abe1bfad8d Add missing breaks in switch statement.
Yes, I am an idiot.
2006-06-15 15:43:00 -07:00
Carl Worth
9fa24975b4 Drop _cairo_surface_is_opaque now that we have cairo_surface_get_content 2006-06-15 15:33:45 -07:00
Carl Worth
0ba040d7f6 Remove _cairo_image_surface_is_alpha_only in favor of just looking at content value. 2006-06-15 14:56:59 -07:00
Carl Worth
82496a6f7c _cairo_format_from_pixman_format: Add useful error mesage and assertion when failing. 2006-06-15 14:15:42 -07:00
Kristian Høgsberg
dedc51ba51 Only call close function for output streams if it's non-NULL. 2006-06-14 19:25:37 -04:00
Kristian Høgsberg
2cea3a2710 Merge branch 'svg-rewrite' 2006-06-14 15:00:33 -04:00
Kristian Høgsberg
4932d09a06 Actually add src/cairo-output-stream-private.h. 2006-06-14 14:12:55 -04:00
Torsten Schönfeld
17ea755235 Add missing cairo_public tag for cairo_image_surface_get_stride 2006-06-14 11:09:00 -07:00
Behdad Esfahbod
7e0be461b5 Rename cairo-wideint.h to cairo-wideint-private.h. 2006-06-14 05:06:10 -07:00
Behdad Esfahbod
b9cfe941c8 Add backend-specific pkg-config files. 2006-06-14 05:06:09 -07:00
Behdad Esfahbod
2249fb89ae Move cairo.pc into src/. 2006-06-14 05:05:30 -07:00
Brian Cameron
b8e93f9c55 Bug 4882: Flag Sun's X server has having buggy_repeat.
This is the Sun labelling of Xorg 6.8 as shipped with Solaris 10.
2006-06-14 04:44:01 -07:00
Behdad Esfahbod
e9269aefcb Bug 7075: Fix make clean to remove cairo.def 2006-06-14 04:07:29 -07:00
Carl Worth
c515b15cfc ft: If glyph->format is not OUTLINE use _render_glyph_bitmap to coerce to a bitmap 2006-06-14 03:53:18 -07:00
Jinghua Luo
0d2900477c freetype: Return an error if the glyph format isn't outline or bitmap
while getting glyph surface.
2006-06-14 15:56:17 +08:00
Carl Worth
1d18af9f5a Merge branch 'type1-subsetting' into cairo
Conflicts:

	src/cairo-ps-surface.c
2006-06-13 15:51:57 -07:00
Carl Worth
c7b194c595 Merge branch 'truetype-subsetting' into cairo
Conflicts:

	src/Makefile.am
	src/cairo-font-subset.c
	src/cairo-pdf-surface.c
	src/cairo-ps-surface.c
2006-06-13 15:46:14 -07:00
Kristian Høgsberg
ed60128bd0 Rewrite SVG backend to just use cairo output stream instead of libxml2. 2006-06-13 17:25:24 -04:00
Carl Worth
4b063c6072 PS, PDF: Re-organize handling of bitmapped fonts to avoid invalid output.
Previously, using the ps or pdf backend with a bitmapped font would
result in a coorupt output file, filled with uninitialized values and
missing procedures for drawing the glyphs.

Now, the file should actually be valid, but it's simply drawing black
boxes instead of the correct glyphs.
2006-06-13 12:51:16 -07:00
Carl Worth
d2045c1f74 Change return type of _cairo_scaled_glyph_lookup to allow UNSUPPORTED.
This allows graceful recovery when first requesting a path from a font
that only supports bitmapped glyph. The changed return type is also
pushed down into the scaled_glyph_init function of the
cairo_scaled_font backend.
2006-06-13 12:51:10 -07:00
Carl Worth
0e30fc4436 Add aliases for deprecated cairo_{pdf,ps,svg}_surface_set_dpi
The aliases should allow binaries with the old symbols to continue to run.

Meanwhile, the macros in cairo.h prevent any code from being compiled without
using the new, future-proof function names.

This is a temporary, transition strategy and the aliases will be dropped
before the next major release.
2006-06-12 09:01:06 -07:00
Carl Worth
7015cc0b90 Add cairo-ps-test.h and cairo-svg-test.h to Makefile.am 2006-06-12 09:01:06 -07:00
Kristian Høgsberg
8581447e7b Add an in-memory output-stream implementation. 2006-06-12 03:15:33 -04:00
Kristian Høgsberg
d433210660 Convert the word wrap stream, the base85 stream and the ps string stream. 2006-06-12 03:10:40 -04:00
Kristian Høgsberg
45cbe055d9 Convert the stdio output stream to use the new output stream interface. 2006-06-12 03:08:51 -04:00