Commit graph

8045 commits

Author SHA1 Message Date
Khaled Hosny
bc0139fd1a doc: Fix external links 2023-02-02 14:13:56 +02:00
Khaled Hosny
06cda058f2 doc: Escape percent sign
Otherwise gtk-doc will eat one of them.
2023-02-02 14:13:56 +02:00
Khaled Hosny
3c6727ee5c doc: Fix internal links 2023-02-02 14:13:56 +02:00
Khaled Hosny
bc2f9b956b doc: Don’t mention non-existent cairo_stroke_to_path()
The code for it is commented out and unimplemented.
2023-02-02 14:13:56 +02:00
Khaled Hosny
086e013e06 doc: Include surface observer documentation
Mostly empty, though.
2023-02-02 14:13:56 +02:00
Khaled Hosny
f03c73b270 doc: Fix missing quartz image surface docs 2023-02-02 14:13:56 +02:00
Khaled Hosny
368ceb67b4 doc: Document CAIRO_SURFACE_TYPE_SKIA and mark it deprecated
Though the Skia code is gone, the surface type enum value is still kept
and need to be documented.
2023-02-02 14:13:56 +02:00
Khaled Hosny
500d87c90d doc: Document CAIRO_STATUS_SVG_FONT_ERROR 2023-02-02 14:13:56 +02:00
Khaled Hosny
40badda549 doc: Fix the gtk-doc syntax of internal symbols
To stop gtk-doc from listing them as undocumented.
2023-02-02 14:13:56 +02:00
Khaled Hosny
4c48d4bbb8 doc: Fix parameter name in comment 2023-02-02 14:13:56 +02:00
Khaled Hosny
eaf8859877 doc: Fix dwrite gtk-doc warnings
Don’t use gtk-doc comment syntax for regular comments.
2023-02-02 14:13:56 +02:00
Adrian Johnson
71eb6396c4 Merge branch 'bug-597' into 'master'
Win32 surface compositor should support DWrite font

Closes #597

See merge request cairo/cairo!441
2023-02-02 10:59:29 +00:00
Adrian Johnson
00453e9a7d Merge branch 'pdf-color-fonts' into 'master'
PDF Type 3 color fonts

See merge request cairo/cairo!434
2023-02-02 10:58:52 +00:00
Adrian Johnson
74feff604e Merge branch 'fix-svg-render-debug' into 'master'
Fix build with -DDEBUG_SVG_RENDER

See merge request cairo/cairo!439
2023-02-02 10:57:35 +00:00
Emmanuele Bassi
b1a18123ed Post-release version bump to 1.17.9 2023-02-02 10:47:00 +01:00
Emmanuele Bassi
c3b672634f Release Cairo 1.17.8 (snapshot) 2023-02-02 08:37:29 +01:00
Fujii Hironori
b1bc11f646 Win32 surface compositor should support DWrite font
_cairo_win32_gdi_compositor_glyphs was falling back to the default
implementation for DWrite font because check_glyphs() returned FALSE
for CAIRO_FONT_TYPE_DWRITE.

Fixes cairo/cairo#597
2023-02-02 09:40:46 +09:00
Fujii Hironori
44e11a96a6 DWrite: Fix incorrect glyph metrics for negative glyph height
GetGdiCompatibleMetrics may return a glyph metrics that yields a small
nagative glyph height. But, it was calculated in unsigned integer.
And, it resulted in a very large glyph metrics.

Calculate glyph width and height in signed integer and let them
non-negative.
2023-02-02 05:27:18 +09:00
Fujii Hironori
bbc6cdb4ef DWrite: Added new API to set measuring mode and rendering params
Added the following API:
* cairo_dwrite_font_face_get_measuring_mode
* cairo_dwrite_font_face_get_rendering_params
* cairo_dwrite_font_face_set_measuring_mode
* cairo_dwrite_font_face_set_rendering_params
2023-02-02 05:27:18 +09:00
Fujii Hironori
cb3410b69f DWrite: Removed old unused API
Removed the following functions:
* cairo_dwrite_get_cleartype_rendering_mode
* cairo_dwrite_set_cleartype_params
* cairo_dwrite_scaled_font_get_force_GDI_classic
* cairo_dwrite_scaled_font_set_force_GDI_classic
2023-02-02 05:27:18 +09:00
Adrian Johnson
775017ee0d Merge branch 'dwrite-cpp-header' into 'master'
Add cairo-dwrite.h header file

See merge request cairo/cairo!425
2023-02-01 08:21:12 +00:00
Adrian Johnson
d11b058c10 Fix build with -DDEBUG_SVG_RENDER 2023-02-01 06:26:09 +10:30
Adrian Johnson
4614892c59 s/the the/the/ 2023-01-31 20:50:01 +10:30
Adrian Johnson
1585587668 dwrite: create C++ dwrite header 2023-01-31 06:54:32 +10:30
Adrian Johnson
e8cac307e1 Fix dwrite crash when printing dwrite toy font
Fixes #632
2023-01-30 07:19:03 +10:30
Adrian Johnson
79501baaa1 PDF Type 3 color fonts
This implements Type 3 color fonts for PDF for any font with a
CAIRO_SCALED_GLYPH_INFO_RECORDING_SURFACE. This includes user-fonts,
SVG fonts, and COLR fonts.

Glyphs with foreground colors are not yet implemented as Type 3 glyphs
and will be rendered as images by cairo-surface.
2023-01-29 18:08:42 +10:30
Emmanuele Bassi
47a932bffc Merge branch 'no-more-gl' into 'master'
Drop cairo-gl

See merge request cairo/cairo!287
2023-01-29 01:32:55 +00:00
Adrian Johnson
0a6ccabbd8 Merge branch 'documentation-updates' into 'master'
Documentation updates

See merge request cairo/cairo!431
2023-01-28 21:45:13 +00:00
Adrian Johnson
b67afda591 Merge branch 'fix-ft-foreground' into 'master'
Fix foreground colors in FT/SVG/COLRv1

See merge request cairo/cairo!430
2023-01-28 04:54:26 +00:00
Adrian Johnson
5786d960e9 Mime type updates 2023-01-28 15:02:31 +10:30
Adrian Johnson
f3d04cfa44 Documentation updates 2023-01-28 14:41:24 +10:30
Emmanuele Bassi
b5793081d0 Drop cairo-gl
The GL support in Cairo has always been a prototype, and
nothing happened in the past 10+ years to make it work as
it was meant to.

GL support is not enabled by any downstream packagers of
Cairo, so nobody should notice its absence.
2023-01-27 19:21:46 +00:00
Adrian Johnson
407bb0a478 Merge branch 'dwrite-custom-palette' into 'master'
dwrite: use custom palette when rendering COLRv0

See merge request cairo/cairo!424
2023-01-27 10:44:31 +00:00
Adrian Johnson
22d0cd1ec3 Merge branch 'doc-fixes' into 'master'
Some documentation fixes

See merge request cairo/cairo!428
2023-01-27 10:26:44 +00:00
Adrian Johnson
119ce21b2c Merge branch 'dwrite-docs' into 'master'
Simplify generating dwrite-fonts docs

See merge request cairo/cairo!426
2023-01-27 10:16:55 +00:00
Adrian Johnson
bdf97dd2a1 Rename is_userfont_foreground to is_foreground_marker
as it is used by FT as well as user fonts.
2023-01-27 20:22:19 +10:30
Adrian Johnson
c8695f0503 Foreground color fixes for ft, svg, colrv1 2023-01-27 20:22:18 +10:30
Khaled Hosny
f05f2b3955 Fix gtk-doc syntax 2023-01-26 18:27:56 +02:00
Khaled Hosny
0cc13eb894 Simplify generating dwrite-fonts docs
Tell gtk-doc to scan .cpp files instead of making a proxy .c file.
2023-01-26 13:08:45 +02:00
Adrian Johnson
e93d175aac Add new cairo_user_scaled_font_get_foreground_source() function
The previous approach using foreground colors in user fonts does not
work for gradients since the foreground color is not available at the
time of recording.

Add a new function cairo_user_scaled_font_get_foreground_source() that
can be called by the color render function to retrieve the foreground
pattern. Calling this function signals to cairo that the foreground
color is used. In this case cairo will call the render function
whenever the foreground color has changed.
2023-01-26 19:49:06 +10:30
Adrian Johnson
75d876ee29 dwrite: use custom palette when rendering COLRv0 2023-01-26 13:19:53 +10:30
Adrian Johnson
0151a67e33 Merge branch 'svg-font-palette' into 'master'
Add svg font test for custom palette colors

See merge request cairo/cairo!418
2023-01-26 01:12:20 +00:00
Adrian Johnson
9ed9cfcf36 Merge branch 'fix-clear-color-glyphs' into 'master'
surface: Don't optimize away color glyphs

See merge request cairo/cairo!419
2023-01-26 01:07:44 +00:00
Behdad Esfahbod
3b807c1d7e [colrv1] Fix crash in get_palette_color
is_foreground_color can be NULL.
2023-01-23 16:50:48 -07:00
Matthias Clasen
ad667d4afd surface: Don't optimize away color glyphs
The surface code was optimizing away show_text_glyphs
based on the operator when the source pattern is clear.
But if we are rendering color glyphs, that is not
correct since we are using the glyphs as source.
2023-01-21 10:47:54 -05:00
Adrian Johnson
ea51a5d66a Merge branch 'fix-svg-crash' into 'master'
Fix svg renderer crash

See merge request cairo/cairo!416
2023-01-21 08:39:29 +00:00
Adrian Johnson
b68583ee54 Add test for SVG font palettes 2023-01-21 17:46:18 +10:30
Adrian Johnson
3cc9e198fd Silence make-cairo-def.sh output
This removes the following output:

  Generating src/cairo.def
  <stdin>:6:9: warning: #pragma once in main file
  <stdin>:4377:9: warning: #pragma once in main file
2023-01-21 17:19:17 +10:30
Matthias Clasen
733e298bea Reshuffle code for clarity
Only loop over custom colors if we got
a palette selected successfully.
2023-01-20 20:39:23 -05:00
Matthias Clasen
be1d41f001 Use the custom palette for COLv1 renderer
When the font options contain a custom palette,
overwrite the palette we got from freetype with
the custom entries.
2023-01-20 15:20:22 -05:00