зеркало из https://github.com/mozilla/pjs.git
b=431391; printing pages with type1 fonts on win32 prints garbage; patch from upstream; r+a=me
This commit is contained in:
Родитель
6b5b8cd360
Коммит
7899dfcd1c
|
@ -22,6 +22,9 @@ Some specific things:
|
|||
cairo git commit ea6dbfd36f2182fda16cb82bca92007e0f7b8d77 -
|
||||
[cairo-meta-surface] Save and restore the original clip.
|
||||
|
||||
cairo git commit d96fdd58abf8d6c8692dbb08ec54cdd80accba79 -
|
||||
win32: Fix broken printing of type1 fonts
|
||||
|
||||
max-font-size.patch: Clamp freetype font size to 1000 to avoid overflow issues
|
||||
|
||||
win32-logical-font-scale.patch: set CAIRO_WIN32_LOGICAL_FONT_SCALE to 1
|
||||
|
|
|
@ -490,6 +490,16 @@ _cairo_win32_scaled_font_select_unscaled_font (cairo_scaled_font_t *scaled_font,
|
|||
return CAIRO_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
cairo_bool_t
|
||||
_cairo_win32_scaled_font_is_type1 (cairo_scaled_font_t *scaled_font)
|
||||
{
|
||||
cairo_win32_scaled_font_t *win32_scaled_font;
|
||||
|
||||
win32_scaled_font = (cairo_win32_scaled_font_t *) scaled_font;
|
||||
|
||||
return win32_scaled_font->is_type1;
|
||||
}
|
||||
|
||||
static void
|
||||
_cairo_win32_scaled_font_done_unscaled_font (cairo_scaled_font_t *scaled_font)
|
||||
{
|
||||
|
|
|
@ -1341,6 +1341,7 @@ _cairo_win32_printing_surface_show_glyphs (void *abstract_surfac
|
|||
}
|
||||
|
||||
if (cairo_scaled_font_get_type (scaled_font) == CAIRO_FONT_TYPE_WIN32 &&
|
||||
! _cairo_win32_scaled_font_is_type1 (scaled_font) &&
|
||||
source->type == CAIRO_PATTERN_TYPE_SOLID)
|
||||
{
|
||||
cairo_matrix_t ctm;
|
||||
|
|
|
@ -181,4 +181,7 @@ _cairo_win32_restore_initial_clip (cairo_win32_surface_t *surface);
|
|||
void
|
||||
_cairo_win32_debug_dump_hrgn (HRGN rgn, char *header);
|
||||
|
||||
cairo_bool_t
|
||||
_cairo_win32_scaled_font_is_type1 (cairo_scaled_font_t *scaled_font);
|
||||
|
||||
#endif /* CAIRO_WIN32_PRIVATE_H */
|
||||
|
|
Загрузка…
Ссылка в новой задаче