| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
It is also used by the xlib surface.
Fixes #778
|
|
|
|
|
|
| |
defined
Fixes #777
|
|
|
|
| |
It is not locale independent.
|
|
|
|
| |
Fixes #508
|
|
|
|
|
|
| |
- Fix a bug in cairo_list_is_singular
- Rename cairo_list_swap() to cairo_list_move_list()
to better describe what it is doing.
|
|
|
|
| |
Fixes #776
|
|\
| |
| |
| |
| |
| |
| | |
Fix missing glyphs in ft-font
Closes #643
See merge request cairo/cairo!467
|
| |
| |
| |
| |
| |
| | |
The format may depend on the font size.
Fixes #643
|
|\ \
| | |
| | |
| | |
| | | |
Fix -Wunused-function warnings
See merge request cairo/cairo!449
|
| | | |
|
|\ \ \
| |_|/
|/| |
| | |
| | | |
ofz#46165 avoid a divide by zero seen fuzzing libreoffice rendering
See merge request cairo/cairo!351
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
win32 font is very small if the lfHeight of HFONT is exactly -size
Closes #3
See merge request cairo/cairo!466
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
cairo_win32_font_face_create_for_hfont is reusing the HFONT object
passed by an argument if possible to create a scaled font. However,
the condition was wrong. It checked the font matrix scale factor is
`-lfHeight`. But it should be `-lfHeight * WIN32_FONT_LOGICAL_SCALE`.
Fixes cairo/cairo#3
|
|\ \ \ \
| |/ / /
|/| | |
| | | |
| | | | |
Remove XML surface
See merge request cairo/cairo!446
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
According to the Debian code search tool, nothing uses it as part of the
Cairo public API, and it has been disabled for a long time with nobody
complaining about it.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
As we do already in _cairo_recording_surface_finish. Otherwise, the
cleanup path of _cairo_recording_surface_create_bbtree() could call
free() on surface->bbtree which is not dynamically allocated.
Closes: https://gitlab.freedesktop.org/cairo/cairo/-/issues/645
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The following clipping text tests of win32/rgb24 target were visibly
failing because clipping didn't work.
* clip-text
* partial-clip-text-bottom
* partial-clip-text-left
* partial-clip-text-right
* partial-clip-text-top
_cairo_win32_gdi_compositor_glyphs sets the clip. However,
_cairo_dwrite_show_glyphs_on_surface unset it.
Fixes cairo/cairo#641
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Create a new IDWriteRenderingParams object from the given font
options.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The DWRITE_COLOR_GLYPH_RUN1 struct definition of the old MinGW
dwrite_3.h was invalid. To work around the problem, dw-extra.h defined
the correct struct definition and all necessary API from dwrite_3.h.
This approach needed to redefine all necessary API.
This change added DWRITE_COLOR_GLYPH_RUN1_WORKAROUND struct and use it
for IDWriteColorGlyphRunEnumerator1::GetCurrentRun.
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
DWrite: Inflate glyph bounds 1px vertically too
Closes #569
See merge request cairo/cairo!461
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The most top and bottom lines of glyphs were clipped in some fonts and
conditions. The glyph bounds were inflated 1px horizontally. It should
inflate vertically too.
Fixes cairo/cairo#569
|
|\ \ \ \ \
| |/ / / /
|/| | | |
| | | | |
| | | | | |
Fix cairo_matrix_transform_distance documentation
See merge request cairo/cairo!462
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
* Use dx and dy instead of dx1 and dy1 to match with the arguments
* Use dx_new and dy_new instead of dx2 and dy2 to match with other parts of the documentation
* Use xx, yx, xy, yy instead of a, b, c, d to match with other parts of the documentation
* Remove the last two sentences that doesn't make sense
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
kCGColorSpaceDefaultRGB.
The default RGB colorspace must be converted to the GPU's colorspace
using CGColorTransformConvertUsingCMSConverter. Profiling has shown this
function to consume as much as 48% of a redraw cycle in gdk-quartz.
There seems to be no named colorspace that matches the one stored on the
display, so we use the one associated with the main display. This has
some risks for users with multiple monitors but in testing with my own
two-monitor setup, one of which is HDR and the other not, the colorspace
was the same for both.
This is applied to quartz surfaces created with
cairo_quartz_surface_create(); surfaces created with
cairo_quartz_surface_create_for_cg_context will inherit the colorspace
from the context.
In order to generate PNGs that look right I've converted the
existing debugging functions for writing a quartz surface to png
into private functions and wired cairo-boilerplate-quartz to use
them. Using the generic cairo routine produced washed-out PNGs.
Fixes https://gitlab.freedesktop.org/cairo/cairo/-/issues/330
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
[quartz] Cleanup and make better use of cairo_quartz_image_surface_t.
See merge request cairo/cairo!317
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Use a CGBitmapContext mapping the underlying image surface's data instead
of maintaining a CGImage. Generalize the quartz surface snapshot mechanism
to work with both cairo_quartz_surface_t and cairo_quartz_image_surface_t
and to use the latter to get a CGContext around non-quartz surfaces.
Use this snapshot machanism to get a CGImageRef when needed from a
cairo_quartz_image_surface_t.
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
DWrite: clipped glyphs in win32 compositor
Closes #641
See merge request cairo/cairo!459
|
| |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The win32 compositor is using _cairo_dwrite_show_glyphs_on_surface for
DWrite. It was assuming that a glyph was painted inside 3x3 of the em
square. It should take the actual glyph bounding box by using
GetAlphaTextureBounds.
Fixes cairo/cairo#641
|
|\ \ \ \ \
| |/ / / /
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | | |
DWrite: glyph surfaces should take subpixel positions into account
Closes #597
See merge request cairo/cairo!456
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Shift the glyph position by phases taken
by _cairo_scaled_glyph_xphase and _cairo_scaled_glyph_yphase.
Fixes #597
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
FT: Always use the outline glyph to get the path
See merge request cairo/cairo!455
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Trying to extract the path from a color recording does not work in all
cases such as paths in groups.
|
|\ \ \ \ \ \
| |_|/ / / /
|/| | | | |
| | | | | |
| | | | | | |
Fix some problems found by valgrind
See merge request cairo/cairo!452
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Valgrind is not happy with the memcmp() to compare font options and it
won't work correctly with variations and custom_palette.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
3d102f25 changed the malloc/memcpy to _cairo_strndup but it won't work
in this case as the string may be UTF-16.
|
| |/ / / /
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Reuse the win32 font code to create a glyph mask for a dwrite font.
Renamed a function _compute_mask in cairo-win32-font.c to
_cairo_compute_glyph_mask.
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
More random doc fixes
See merge request cairo/cairo!437
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Gtk-doc wants the header and code parameter names to match.
src/win32/cairo-dwrite-font.cpp:1484: warning: Parameter description for cairo_dwrite_font_face_set_rendering_params::params is not used from source code comment block.
src/win32/cairo-dwrite-font.cpp:1484: warning: Parameter description for cairo_dwrite_font_face_set_rendering_params::param is missing in source code comment block.
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Otherwise gtk-doc will eat one of them.
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The code for it is commented out and unimplemented.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Mostly empty, though.
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Though the Skia code is gone, the surface type enum value is still kept
and need to be documented.
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
To stop gtk-doc from listing them as undocumented.
|