Commit graph

3183 commits

Author SHA1 Message Date
Behdad Esfahbod
fef0251d15 Add cairo-truetype-subset-private.h to list of ignored headers 2006-08-07 22:15:15 -04:00
Behdad Esfahbod
c2ea56e5e0 Add test truetype-tables that checks sizeof truetype tables 2006-08-07 21:37:16 -04:00
Behdad Esfahbod
50be7951c9 Split the TrueType table definitions into a private header file
such that we can test the struct sizes in a test.
2006-08-07 21:23:08 -04:00
Behdad Esfahbod
ec895202e0 Remove the __attribute__ ((packed)) and the need for it
as it's not portable and lack of it could seriously break the truetype
subsetting code.  Now, instead of using int32_t and int64_t, we use
multiple int16_t items, to avoid any alignments.  Fortunately, we are
not using any of the fields involved, so no code changes necessary.
2006-08-07 21:13:48 -04:00
Carl Worth
20c3ff96de Fix some signed/unsigned comparison warnings that cropped up during the warnings-cleanup branch 2006-08-07 15:22:49 -07:00
Carl Worth
959b85e98c Merge branch 'warnings-cleanup' into cairo
Conflicts:

	src/cairo-font-subset.c
2006-08-07 15:06:47 -07:00
Behdad Esfahbod
f1c70a0139 Mark x86_64 subsetting as fixed in ROADMAP. 2006-08-07 17:32:02 -04:00
Carl Worth
7ee94c0285 Squelch an annoying -Wswitch-enum warning by not using switch 2006-08-07 14:30:06 -07:00
Carl Worth
43b579d757 Add -Wswitch-enum compiler flag and fix all trivial warnings 2006-08-07 14:30:06 -07:00
Behdad Esfahbod
d1f9bef30e Add -Wunsafe-loop-optimizations compiler flag and fix all warnings 2006-08-07 14:24:32 -07:00
Behdad Esfahbod
744ef3bf69 Add several compiler warning flags (no code changes needed)
The flags added here are as follows:

-Werror-implicit-function-declaration Wstrict-aliasing=2
-Wwrite-strings Winit-self Wpacked Wmissing-format-attribute
-Wdeclaration-after-statement
2006-08-07 13:54:57 -07:00
Behdad Esfahbod
0071102208 Add -Wwrite-strings compiler flag and fix all warnings 2006-08-07 13:13:33 -07:00
Carl Worth
9ae66174e7 Fix bug 7294 by adding pixman BGR formats and internal cairo BGR formats.
This approach to fixing the bug is valid since there is code in pixman
for rendering to BGR images, (which is why cairo 1.0 worked with BGR X
servers for example). But, since we don't want to advertise additional
image formats we implement this through a new cairo_internal_format_t.

This is rather fragile since we don't want to leak any internal formats
nor do we ever want an internal format to be used somewhere a real
format is expected, (and trigger a CAIRO_FORMAT_VALID assertion failure).
More comments than code are added here to help compensate for the
fragility and to give some guidance in fixing this mess in a better way
in the future.
2006-08-07 11:19:19 -07:00
Adrian Johnson
f4b12e497b Make truetype subsetting work on x86_64
This fixes the bug reported against GTK+ here:
	http://bugzilla.gnome.org/show_bug.cgi?id=349826
2006-08-07 11:07:08 -07:00
Declan Naughton
7724c575b0 Fix typos in internal documentation. 2006-08-07 10:33:15 -07:00
Carl Worth
caa9abc9ee Fix file handle leak in failure path (bug 7616) 2006-08-07 10:28:40 -07:00
Alfred Peng
04757a3aa8 Add definition of cairo_private for some Sun compilers.
In addition to helping us preserve a sharp line between which symbols are
part of the public API and which are private parts of the implementation,
this can also help mozilla avoid clashes between its modified, internal
copy of cairo and the system version of cairo. See the mozilla bug here:

https://bugzilla.mozilla.org/show_bug.cgi?id=341874
2006-08-07 08:41:13 -07:00
Chris Wilson
e2fddcccb4 Fix memory leak in _cairo_surface_show_glyphs (bug 7766) 2006-08-04 17:16:35 -07:00
Carl Worth
aec3933803 ROADMAP: Mark 7533 as fixed and add broken truetype subsetting on x86_64 2006-08-04 16:54:25 -07:00
Dominic Lachowicz
761b30792d Add binary garbage to PDF header as recommended in section 3.4.1 of PDF Reference v1.6 2006-08-04 16:39:40 -07:00
Carl Worth
2815d9ad38 Use base pointer to avoid compiler warning. 2006-08-03 19:28:11 -07:00
Carl Worth
1feb4291cf Apply device_transform during meta-surface replay to fix bug 7533 2006-08-03 19:26:50 -07:00
Carl Worth
8c953167ba Simplify common set_clip operation in meta-surface replay. 2006-08-03 19:26:50 -07:00
Behdad Esfahbod
34a0b728fb Fail FreeType load_truetype_table on vertical fonts as we don't do it
right now.  Failing disables the subsetting for vertical fonts, like
it was being done before the recent changes to the TrueType subsetter.
2006-08-03 00:20:35 -04:00
Carl Worth
2c0959141a Update ROADMAP now that several of the 1.2.2-targeted bugs are fixed 2006-08-02 16:40:23 -07:00
Kristian Høgsberg
30f004d55a Rename truetype subset function to _cairo_truetype_*.
Used to be _cairo_pdf_ft_*, a left over from when this code was
specific to the PDF backend.
2006-08-02 19:30:55 -04:00
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
127704c225 Look for per-target reference image too 2006-08-01 20:39:56 -04:00
Behdad Esfahbod
fc715ffd80 New PS ref images, matching the recent png16m->pngalpha driver change 2006-08-01 18:21:27 -04:00
Behdad Esfahbod
3e24f516a2 Change the text string "cd" to "AB" in test to match the other string
that is drawn.  The reason, one is draw using show_text, the other
using text_path.  The difference is more emphasized when rendering the
same string.
2006-08-01 16:13:29 -04:00
Behdad Esfahbod
3d95919fab Switch from ghostscript's png16m driver to pngalpha for PS->PNG again.
We have switched back and forth quite a few times.  This time I'm switching
because with pngalpha we get gray antialiased text and graphics while with
png16m all we get is no antialiasing.  This is definitely a bug in the png16m
driver, but I won't wait until it gets fixed upstream.

Previously Carl Worth switched to pngalpha and reverted it immediately in
commit c4fc7b06b5.  I've now fixed image-diff to
work with the output of pngalpha, so we can switch.  It requires lots of
reference image updates, but still doesn't help with reducing the number of
PS-specific reference images we need.
2006-08-01 15:27:11 -04:00
Behdad Esfahbod
5a23fd70a0 Change the way diff images highlight differences.
Previously it was using the equation 128+diff/3, which results in
lots of gray and de-emphasized difference.  Now it's using
MIN(255,diff*4) which more emphasizes the real difference.
2006-08-01 15:20:39 -04:00
Behdad Esfahbod
d85f30e789 Make image_diff_flattened flatten the first image too.
This is useful to use the ghostscript pngalpha driver for example.
2006-08-01 15:18:19 -04:00
Behdad Esfahbod
556a4d8405 Add vector_ignored_tests that is tests ignored for ps/pdf/svg
that includes all tests depending on CAIRO_ANTIALIAS_NONE and
CAIRO_ANTIALIAS_SUBPIXEL.
This removes separate pdf_ignored_tests and svg_ignored_tests
arrays that were out of synch and otherwise the same.
2006-08-01 15:16:10 -04:00
Behdad Esfahbod
226178539a Add comments about CAIRO_ENABLE_BACKEND. 2006-07-31 16:05:34 -04:00
Behdad Esfahbod
2fa709d6af Set font options in the test context and make tests not do that
This should help with not requiring many backend-specific reference
images, and some should be removed now.
2006-07-31 15:17:15 -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
Behdad Esfahbod
88675958ef Remove config.cache in autogen.sh. 2006-07-31 01:03:15 -04:00