| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
This reverts commit c5d86c368128bb9a0be913829da79649fb81f486.
Closes #409
|
|
|
|
| |
We can use the hb-based implementation in pangofc-font.c.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit b359bb484bc7d27a835cfd6d9ffcaed582ebf2ae.
Bug 694918 - Pango layout is rendered in wrong size if we have
non-identity cairo transformation matrix
I was wrong blindly copying this logic from pangocairo-fc into
pangocairo-win32 and pangocairo-quartz.
The reason we need the it in pangofc is because the fontsize we
get back from fontconfig is multiplied by the ctm scale factor,
so we undo it when loading the font. The same is NOT true about
the non-fc backends, so the copying was totally wrong.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-09 Behdad Esfahbod <behdad@gnome.org>
* pango/pangocairo-atsuifont.c (_pango_cairo_atsui_font_new):
* pango/pangocairo-fcfont.c (_pango_cairo_fc_font_new):
* pango/pangocairo-font.c (_pango_cairo_font_private_initialize):
* pango/pangocairo-private.h:
* pango/pangocairo-win32font.c (_pango_cairo_win32_font_new):
Remove desc argument from _pango_cairo_font_private_initialize().
Replace it with gravity, the only thing from desc we actually needed.
This is in preparation for lazy loading of fonts in the pangofc fontmap.
svn path=/trunk/; revision=2803
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-01-09 Behdad Esfahbod <behdad@gnome.org>
* pango/pangocairo-atsuifont.c (_pango_cairo_atsui_font_new):
* pango/pangocairo-fcfont.c (_pango_cairo_fc_font_new):
* pango/pangocairo-font.c (_pango_cairo_font_private_initialize):
* pango/pangocairo-private.h:
* pango/pangocairo-win32font.c (_pango_cairo_win32_font_new):
Remove context argument from _pango_cairo_font_private_initialize().
Replace it with pango_ctm and font_options, the only things from
context we actually needed. This is in preparation for lazy loading
of fonts in the pangofc fontmap.
svn path=/trunk/; revision=2801
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-12-05 Behdad Esfahbod <behdad@gnome.org>
Bug 563356 – The input area of firefox and the blank width after text
in gnome-menu was stretched too wide, under pango-1.22.3
* docs/tmpl/fonts.sgml:
* pango/pango-impl-utils.h:
* pango/pangocairo-atsuifont.c
(pango_cairo_atsui_font_create_metrics_for_context):
* pango/pangocairo-win32font.c
(pango_cairo_win32_font_create_metrics_for_context):
* pango/pangofc-font.c (pango_fc_font_create_metrics_for_context):
For approximate_char_width calculation take each char's width into
account. That is, do a weighted average instead of uniform average.
g_unichar_iszerowidth() chars count as 0, g_unichar_iswide() chars
count 2, and the rest count as 1. Pretty much wcwidth() behavior.
See bug report for rationale.
svn path=/trunk/; revision=2747
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-11-28 Behdad Esfahbod <behdad@gnome.org>
Bug 562574 – Pangocariowin32 is leaking every cairo font it ever
creates
* pango/pangocairo-atsuifont.c (pango_cairo_atsui_font_finalize):
* pango/pangocairo-win32font.c (pango_cairo_win32_font_finalize):
Finalize shared pangocairo font resources. Oops!
* pango/pangocairo-font.c (_pango_cairo_font_private_finalize):
Protect against multiple calls to finalize. This is practiced by the
pangocairo-fcfont when a font is shutdown and then finalized.
svn path=/trunk/; revision=2746
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-08-22 Behdad Esfahbod <behdad@gnome.org>
Bug 143542 – PangoFT2Fontmap leak
* pango/fonts.c:
* pango/pangoatsui.c (pango_atsui_font_finalize),
(_pango_atsui_font_set_font_map):
* pango/pangocairo-font.c (_pango_cairo_font_get_metrics),
(_pango_cairo_font_private_get_hex_box_info):
* pango/pangocairo-win32font.c (_pango_cairo_win32_font_new):
* pango/pangofc-font.c (pango_fc_font_get_metrics):
* pango/pangofc-fontmap.c (pango_fc_font_map_add),
(_pango_fc_font_map_remove), (cleanup_font):
* pango/pangowin32-fontmap.c (pango_win32_font_neww),
(pango_win32_font_map_real_find_font):
* pango/pangowin32.c (pango_win32_font_finalize):
* pango/pangox-fontmap.c (pango_x_font_map_load_font):
* pango/pangox.c (pango_x_font_new), (pango_x_font_finalize):
Make the reference the font->fontmap reference weak.
The code for setting the reference must look like this:
g_assert (font->fontmap == NULL);
font->fontmap = (PangoFontMap *) fontmap;
g_object_add_weak_pointer (G_OBJECT (font->fontmap), (gpointer *) (gpointer) &font->fontmap);
And releasing it like:
g_assert (font->fontmap != NULL);
g_object_remove_weak_pointer (G_OBJECT (font->fontmap), (gpointer *) (gpointer) &font->fontmap);
font->fontmap = NULL;
I have converted all fontmaps. The win32 and atsui ones can
use some simple testing.
The PangoFc fonts actually don't need the weakref as the fontmap
already provides a similar link by itself.
svn path=/trunk/; revision=2704
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-06-21 Johan Dahlin <jdahlin@async.com.br>
* *.[ch]: Include "config.h" instead of <config.h>
Command used:
find -name \*.[ch]|xargs perl -p -i -e 's/^#include <config.h>/#include "config.h"/g'
Rubberstamped by Behdad
svn path=/trunk/; revision=2657
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2007-11-29 Behdad Esfahbod <behdad@gnome.org>
Bug 485536 – underline_position can be zero
* pango/pango-utils.c (pango_cairo_quantize_line_geometry):
Document that returned position may be zero.
* pango/pangocairo-win32font.c
(pango_cairo_win32_font_create_metrics_for_context):
* pango/pangofc-font.c (get_face_metrics):
Handle case of underline_position==0 after rounding.
svn path=/trunk/; revision=2506
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2007-06-12 Tor Lillqvist <tml@novell.com>
* pango/pangowin32-private.h (struct PangoWin32Face: Add
is_synthetic field.
* pango/pangowin32-fontmap.c: Implement is_synthesized.
* pango/pangocairo-win32font.c
* pango/pangocairo-win32fontmap.c: Update for the changes to
PangoCairoFontMap and PangoCairoFont.
svn path=/trunk/; revision=2347
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2007-03-10 Tor Lillqvist <tml@novell.com>
* pango/pangowin32-private.h
* pango/pangowin32.c
* pango/pangowin32-fontcache.c
* pango/pangowin32-fontmap.c
* pango/pangocairo-win32font.c
* pango/pangowin32.def: Move functions defined in one file and
used in another to the file where used, make them static, and drop
from pangowin32-private.h. Prefix all private non-static functions
with underscore. Also functions used only by the pangocairo DLL
are considered private. (#120195)
svn path=/trunk/; revision=2213
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2007-02-26 Tor Lillqvist <tml@novell.com>
This change was supposed to go in the trunk before 1.16.0, but it
didn't quite get there in time. So, to have a clear cut for this
somewhat fundamental change in underlying workings (although there
should be no user-visible changes), I will build and distribute
Win32 binaries only starting from 1.16.1.
Use wide character API for fonts on Windows. Rename functions and
variables that deal with LOGFONTW structs to emphasize
this. (#407315)
* pango/pangowin32.c
* pango/pangowin32-fontcache.c
* pango/pangowin32-fontmap.c: Use LOGFONTW all over the place
instead of LOGFONT, and adapt code accordingly. Use wide character
Win32 API.
* pango/pangowin32.c (pango_win32_font_neww): Renamed from
pango_win32_font_new(), as it now takes a LOGFONTW pointer. This
is a private function and can be renamed though it is exported as
it is used from the pangocairo DLL.
(pango_win32_font_logfont): Mention explicitly in doc comment that
it returns a LOGFONTA, and recommend to use
pango_win32_font_logfontw() instead.
(pango_win32_font_logfontw): New function.
* pango/pangowin32-fontcache.c
(pango_win32_font_cache_load): Must keep this function that takes
a LOGFONTA pointer as it is declared in the public header.
(pango_win32_font_cache_loadw): New public function that takes a
LOGFONTW pointer.
* pango/pangowin32-fontmap.c
(pango_win32_font_description_from_logfont): Mention explicitly in
the doc comment that it takes a LOGFONTA pointer.
(pango_win32_font_description_from_logfontw): New public function
that takes a LOGFONTW pointer.
(pango_win32_make_matching_logfontw): Rename from
pango_win32_make_matching_logfont() to emphasize it takes a
LOGFONTW pointer.
* pango/pangowin32.h: Declare new public functions.
* pango/pangowin32-private.h: Declare new private functions, drop
removed ones.
* pango/pangocairo-win32font.c (_pango_cairo_win32_font_new):
Simplify now that we call pango_win32_make_matching_logfontw().
* pango/pangowin32.def: Add new functions, rename internal
functions that now use LOGFONTW.
2007-02-26 Tor Lillqvist <tml@novell.com>
Fix brokenness in the code that tries to ensure that all fonts
also have italic variants. Now the code hopefully actually does
what it was supposed to. (Which is not necessarily the right thing
to do, though. It can be argued that we should not list
synthesized italic font styles, we should just silently generate
them if asked for. We don't want synthesized italic (or synthesized
bold) styles showing up in the font selector. They don't show up
when using a fontconfig-based Pango backend either.) (#110521)
* pango/pangowin32-fontmap.c
(logfont_nosize_hash, logfont_nosize_equal): Don't use the
lfItalic field as such, just its nonzeroness. When being
enumerated, italic fonts show up with lfItalic=255, but our code
looks up italic versions of fonts by passing a key LOGFONT with
lfItalic=1.
(first_match): Not needed any more, see below.
(ensure_italic): This is now called on the entries in the
size_infos hash table, not families. The code used to randomly
look for the first matching font in size_infoswith the family name
being handled.
(pango_win32_font_map_init): Iterate through the size_infos hash
table with ensure_italic, not through the families table.
* pango/pangowin32-fontcache.c
(logfontw_hash, logfontw_equal): Look at just nonzeroness of
lfItalic here, too.
svn path=/trunk/; revision=2204
|
|
|
|
|
|
|
|
|
| |
2007-01-16 Behdad Esfahbod <behdad@gnome.org>
*.c, *.h: Replace preceding sequences of 8 spaces with tabs.
svn path=/trunk/; revision=2165
|
|
|
|
|
|
|
|
|
| |
2007-01-16 Behdad Esfahbod <behdad@gnome.org>
*.c, *.h: Drop trailing whitespace.
svn path=/trunk/; revision=2163
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2007-01-16 Behdad Esfahbod <behdad@gnome.org>
* examples/cairotwisted.c (draw_text):
* pango/pangocairo-win32font.c (max_glyph_width):
* pango/pangofc-font.c (max_glyph_width):
* pango/pangowin32.c (max_glyph_width),
(pango_win32_render_layout):
* pango/pangox.c (pango_x_render_layout):
Use pango_layout(_iter)?_get_line_readonly() instead of
pango_layout(_iter)?_get_line().
svn path=/trunk/; revision=2146
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2006-05-05 Hans Breuer <hans@breuer.org>
* pango/pangocairo-win32font.c(compute_glyph_extents) : not only
handle PANGO_GLYPH_EMPTY but also PANGO_GLYPH_UNKNOWN_FLAG.
The latter is needed to have proper sizing of the "hex box" for
missing glyphs. It also stops cairo complaining about unknown glyphs.
Fixes part of bug #343796.
* pango/makefile.msc : create $(PRJ_TOP)\config.h.win32. (Not
changing in years does not necessarily mean it is not used)
* pango/testfonts.c : make family_name survive
pango_font_description_free(), it is used later on
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2006-05-22 Behdad Esfahbod <behdad@gnome.org>
Bug 342525 – With PangoFc and PangoWin32, approximate digit width is
not what it says
* pango/pangocairo-win32font.c (max_glyph_width),
(create_metrics_for_context): Use max digit width instead of average.
Reverted the following changes:
* pango/pangofc-font.c (pango_fc_font_create_metrics_for_context):
Likewise for PangoFc. Compute average instead of max.
(max_glpyh_with): Now unused, drop.
* pango/pangowin32.c (pango_win32_font_get_metrics): Calculate
average digit width correctly, not as max of the digit
widths. (#342525) Note that this code doesn't really get much used
currently (instead the code in pangocairo-win32font.c is used),
fixed only for completeness.
(max_glpyh_with): Now unused, drop.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2006-05-22 Behdad Esfahbod <behdad@gnome.org>
* pango/pango-font.h, pango/fonts.c: New function
pango_font_describe_with_absolute_size().
* pango/pangocairo-font.c (_pango_cairo_font_get_hex_box_info):
* pango/pangocairo-win32font.c (create_metrics_for_context):
* pango/pangofc-font.c (pango_fc_font_class_init),
(pango_fc_font_describe_absolute),
(pango_fc_font_create_metrics_for_context):
* pango/pangowin32.c (pango_win32_font_class_init),
(pango_win32_font_get_metrics), (pango_win32_font_describe),
(pango_win32_font_describe_absolute): Implement and use
PangoFontClass->describe_absolute.
|
|
|
|
|
|
|
|
| |
2006-03-30 Behdad Esfahbod <behdad@gnome.org>
Hook up pango-utils.h into the documentation, as we are installing
it anyway. Move some internal stuff to pango-impl-utils.h and make
source files include that instead.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2006-03-30 Tor Lillqvist <tml@novell.com>
Fix blurred underlines on Win32 (#332656):
* pango/pango-utils.c (pango_quantize_line_geometry):
New public function. Used to be the static quantize_position() in
pangofc-font.c
* pango/pango-utils.h: Declare it.
* pango/pango.def: Here, too.
* pango/pangofc-font.c (quantize_position): Remove.
(get_face_metrics): Use pango_quantize_line_geometry() instead.
* pango/pangocairo-win32font.c (create_metrics_for_context): Call
pango_quantize_line_geometry() for underline and strikethrough
geometries.
|
|
|
|
|
|
|
|
|
|
|
| |
2006-02-25 Hans Breuer <hans@breuer.org>
* pango/pangocairo-win32font.c(pango_cairo_win32_font_install) :
return TRUE to glyphs rendered at all (instead of box). This may
be compiler specific (what to return w/o return) but fixes bug #332538
* pango/makefile.msc : updated
* pango/pango.def : just some sorting
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2006-02-02 Behdad Esfahbod <behdad@gnome.org>
Finish the 'glyph 0' work of this morning:
PANGO_GLYPH_NULL that I introduced is renamed to
PANGO_GLYPH_EMPTY. It means, no rendering should
be performed. The backends however, still return
0 if a glyph is not found. The modules then are
free to replace this 0 glyph with an unknown
character.
* modules/arabic/arabic-fc.c, modules/basic/basic-atsui.c,
modules/basic/basic-fc.c, modules/basic/basic-win32.c,
modules/basic/basic-x.c, modules/hangul/hangul-fc.c,
modules/hebrew/hebrew-fc.c, modules/indic/indic-fc.c,
modules/khmer/khmer-fc.c, modules/syriac/syriac-fc.c,
modules/thai/thai-fc.c, modules/tibetan/tibetan-fc.c,
pango/pangox.c, pango/pangowin32.c:
Adapt to above change. Backends return 0 if glyph not
found.
* pango/fonts.c (pango_font_get_glyph_extents): If font
is not usable (!PANGO_IS_FONT (font)), return the generic
UNKNOWN_GLYPH metrics. This is used when your backends
are misconfigured and you don't find *any* font at all.
* pango/pango-engince.c: Add unknown glyphs in fallback
shaper, instead of empty glyphs.
* pango/shape.c: Call the fall-back shaper if shaper
fails, instead of generating a dummy glyph string ourselves.
* pango/pango-layout.c (imposed_shape, shape_tab): Use
PANGO_GLYPH_EMPTY instead of glyph 0.
* pango/pango-renderer.c (pango_renderer_draw_glyph): No-op on
PANGO_GLYPH_EMPTY instead of glyph 0.
* pango/pangocairo-atsuifont.c, pango/pangocairo-win32font.c,
pango/pangocairo-fcfont.c, pango/pangocairo-font.c,
pango/pangocairo-private.h: install_font returns a boolean now.
* pango/pangocairo-render.c, pango/pangoxft-render.c: Handle font
and hex-box failures more gracefully by drawing a generic
unknown-box glyph.
* pango/pangoft2.c, pango/pangoft2-render.c: Draw the generic
unknown-box glyph here too. For unknown glyphs though, if
the font is TTF (FT_IS_SFNT), use the zero-indexed glyph,
otherwise, draw a box of proper size.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2006-01-29 Behdad Esfahbod <behdad@gnome.org>
* modules/arabic/arabic-fc.c, modules/basic/basic-fc.c
modules/hebrew/hebrew-fc.c, modules/indic/indic-fc.c
modules/khmer/khmer-fc.c, modules/syriac/syriac-fc.c
modules/thai/thai-ot.c, modules/thai/thai-shaper.c
modules/tibetan/tibetan-fc.c: If locking font face failed,
do not assert, just return zero glyphs with an implicit
warning.
* pango/fonts.c, pango/glyphstring.c pango/modules.c
pango/pango-color.c, pango/pango-context.c
pango/pango-coverage.c, pango/pango-fontmap.c
pango/pango-glyph-item.c, pango/pango-item.c
pango/pango-layout.c, pango/pango-markup.c
pango/pango-ot-buffer.c, pango/pango-script.c
pango/pango-tabs.c, pango/pango-utils.c
pango/pangoatsui-fontmap.c, pango/pangocairo-fcfont.c
pango/pangocairo-fcfontmap.c, pango/pangocairo-fontmap.c
pango/pangocairo-win32font.c, pango/pangofc-font.c
pango/pangofc-fontmap.c, pango/pangoft2-fontmap.c
pango/pangoft2-render.c, pango/pangoft2.c
pango/pangowin32-fontcache.c, pango/pangoxft-font.c
pango/pangoxft-render.c, pango/break.c pango/ellipsize.c:
Use g_slice for allocating all types. Also, change some
g_error's to g_critical's...
|
|
|
|
|
|
|
|
|
|
| |
2006-01-27 Behdad Esfahbod <behdad@gnome.org>
* modules/Makefile.am: Remove pango.modules on uninstall. (bug
* #328869)
* pango/pango-fontmap.c, pango/pangocairo-*font.c: Better error
messages.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2006-01-14 Behdad Esfahbod <behdad@gnome.org>
Draw hexbox for cairo backend. Bug #313551. Based on patch by
LingNing Zhang.
* pango/pangocairo-private.h (_PangoCairoFontIface): Add new methods:
get_font_face and get_scaled_font, and getters:
_pango_cairo_font_get_font_face, _pango_cairo_font_get_scaled_font.
* pango/pangocairo-private.h: Add _PangoCairoHexBoxInfo, and getter
_pango_cairo_get_hex_box_info, and
_pango_cairo_get_glyph_extents_missing.
* pango/pangocairo-fcfont.c, pango/pangocairo-atsuifont.c,
* pango/pangocairo-win32font.c: Export get_font_face and
get_scaled_font methods.
* pango/pangocairo-fcfont.c: Use
* _pango_cairo_get_glyph_extents_missing
on missing glyphs.
* pango/pangocairo-font.c: Implement _pango_cairo_font_get_font_face,
_pango_cairo_font_get_scaled_font, _pango_cairo_get_hex_box_info, and
_pango_cairo_get_glyph_extents_missing.
* pango/pangocairo-render.c
* (_pango_cairo_renderer_draw_unknown_glyph):
Added.
* pango/pangocairo-render.c (pango_cairo_renderer_draw_glyphs):
Cleaned up to use the added function above.
|
|
|
|
|
|
|
| |
2006-01-14 Behdad Esfahbod <behdad@gnome.org>
* */*.c, */*/*.c: Make sure #include <config.h> is the first include
in the file. (bug #158870, based on patch by Luis Menina)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2005-09-22 Tor Lillqvist <tml@novell.com>
* pango/pangocairo-win32font.c (_pango_cairo_win32_font_new): Move
the calculation of dpi and size earlier. Use the size variable
instad of isize when looking for a matching cached font. Isize was
supposed to be the same as size anyway. (Actually it was the same
only when LOGPIXELSY equalled 96 (which often is the default
value), see below.)
* pango/pangocairo-win32fontmap.c (pango_cairo_win32_font_map_init):
Set dpi to the LOGPIXELSY value instead of hardcoding 96.
* pango/Makefile.am (libpangocairo_1_0_la_LIBADD): Need WIN32_LIBS
now.
|
|
|
|
|
|
|
| |
2005-09-14 Tor Lillqvist <tml@novell.com>
* pango/pangocairo-win32font.c: Use identical glyph extents
cacheing as in pangocairo-fcfont.c. Huge performance improvement.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2005-09-14 Tor Lillqvist <tml@novell.com>
* pango/pangocairo-win32font.c (struct _PangoCairoWin32Font): Have
a list of metrics by language instead of just one metrics.
(pango_cairo_win32_font_get_scaled_font): Use the name cwfont
instead of cffont.
(free_metrics_info, pango_cairo_win32_font_finalize): Free the
metrics by language list.
(create_metrics_for_context): New helper function. Approximate the
character and digit widths correctly. (#314114)
(pango_cairo_win32_font_get_metrics): Use the list of metrics by
language. Call create_metrics_for_context() to measure metrics.
(_pango_cairo_win32_font_new): Keep the PangoWin32Font objects in
the PangoWin32Face::cached_fonts, like the pangowin32 backend
does.
PangoWin32Face::cached_fonts isn't really a proper cache. It's a
list with unbound length, one PangoWin32Font per size. Once there
is cacheing in cairo this can be dropped presumably? What does the
pangofc backend do? There are too many levels of cacheing going
on: we have the stuff in pangowin32-fontcache.c (unused now with
cairo), the PangoWin32FontMap::freed_fonts cache, and the
PangoWin32::cached_fonts list.
* pango/pangowin32-fontmap.c (pango_win32_fontmap_cache_remove,
pango_win32_fontmap_cache_clear): Use GQueue API instead of
manipulating pointers manually.
* pango/pangowin32-private.h
* pango/pangowin32.c: Move PangoWin32MetricsInfo to the private
header file, as also pangocairo-win32font.c uses it.
|
|
|
|
|
|
|
|
|
| |
2005-07-30 Hans Breuer <hans@breuer.org>
* pango/makefile.msc : updated
* pango/pangocairo-win32font.c(...get_metrics) : dont use ascent
where descent is meant. Fixes size of edit boxes for gtk+-2.7
|
|
|
|
|
|
|
|
|
|
| |
2005-07-26 Owen Taylor <otaylor@redhat.com>
* pango/pangocairo-fontmap.c (pango_cairo_context_get_font_options):
Fix mixed code and declarations (#311626, Kazuki IWAMOTO)
* pango/pangocairo-win32font.c (pango_cairo_win32_font_install):
Fix typo (#311627, Kazuki IWAMOTO)
|
|
|
|
|
|
|
|
|
|
|
| |
2005-07-25 Owen Taylor <otaylor@redhat.com>
* pango/pangocairo-fcfont.c (pango_cairo_fc_font_install): Set
font options as well.
* pango/pango-layout.c (line_set_resolved_dir): Always set
line->resolved_dir to one of LTR or RTL. (#171439, Reported
by Chris Blizzard)
|
|
|
|
|
|
|
|
|
|
| |
2005-07-25 Tor Lillqvist <tml@novell.com>
* configure.in
* pango/pangocairo-win32font.c (_pango_cairo_win32_font_new): Fix
a few typos that prevented build on Win32.
* pango/pango.def: Add pango_is_zero_width.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2005-07-19 Owen Taylor <otaylor@redhat.com>
* pango/pango-fcfontmap.[ch]: Rework handling of context-specific
options: drop get_render_key() and add a opaque "context
key" (get_context_key() and friends). Also add a function to get
the resolution.
* pango/pango-fcfontmap.c pango/pangofc-font.h:
- Move the 'lang' into the fontset key lookup and get rid of the
funky list-of-hash-tables
- Make lookups of fontsets and fonts dependent on the context key
for the context.
- Simplify the pattern/fontset caching to have one finite-size
cache rather than an infinite first-level and a finite-size
second level.
* pango/pangocairo.h pango/pangocairo-private.h
pango/pangocairo-fontmap.c: Add
pango_cairo_context_get/set_resolution(),
pango_cairo_context_set/get_font_options to allow controlling the
resolution and font rendering options for a specific PangoContext.
* pango/pangocairo-fcfont.c pango/pangocairo-fcfontmap
pango/pangocairo-win32font.c: Implement resolution and font
options handling adapt to related Cairo changes.
* docs/pango-sections.txt docs/Makefile.am pango/pangowin32.c:
Doc updates and build fixes.
* pango/pangofc-fontmap.c (pango_fc_make_pattern): Create
patterns with FC_SIZE as well as FC_PIXEL_SIZE to work around
a libgnomeprint bug. (#309477)
|
|
|
|
|
|
|
|
| |
2005-05-11 Owen Taylor <otaylor@redhat.com>
* pango/pangocairo-win32font.c (pango_cairo_win32_font_install):
Update for cairo API change.
(pango_cairo_win32_font_get_metrics): Fix x/y typo.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2005-04-28 Tor Lillqvist <tml@novell.com>
* pango/pangocairo-win32font.c (pango_cairo_win32_font_get_font_face):
Correct parameters passed to MultiByteToWideChar(). Pass -1 as
source string length so that the target string gets
zero-terminated. Size of target array is in number of WCHARs, not
number of bytes.
Add support to pangowin32 for TrueType fonts with coverage outside
the BMP. Fix handling of surrogate pairs in the Uniscribe
shaper. (#302238)
* pango/pangowin32-private.h (PangoWin32Face): Rename the
unicode_table field to cmap. Keep track of its format (4 or 12).
(format_12_cmap): Add struct for a format 12 cmap.
* pango/pangowin32.c: Corresponding changes. Rename internal
functions a bit.
(get_format_12_cmap): New function, reads a format 12 cmap.
(font_get_cmap): Look for both format 12 (which is preferred) and
format 4 cmaps.
(pango_win32_font_get_glyph_index,
pango_win32_font_calc_coverage): Handle also format 12 cmaps.
* modules/basic/basic-win32.c: Handle surrogate pairs in wchar_t
strings properly.
(unichar_index): New function. Given a wchar_t string and an index
into it, calculate the index of the corresponding Unicode
character. Each surrogate pair in the wchar_t is just one Unicode
character.
(set_up_pango_log_clusters, itemize_shape_and_place): Use
unichar_index() instead of direct index into wchar_t string.
|
|
|
|
|
|
|
|
|
|
|
|
| |
2005-04-07 Owen Taylor <otaylor@redhat.com>
* configure.in: Test for renamed
cairo_win32_scaled_font_select_font().
* pango/pangocairo-win32font.c: Fix various compilation errors.
* pango/pangocairo-fcfont.c pango/pangocairo-win32font.c
pango/pangocairo-fontmap.c: Use new matrix API.
|
|
|
|
|
|
|
|
|
|
|
| |
2005-04-07 Owen Taylor <otaylor@redhat.com>
* pango/pangocairo-fcfont.c pango/pangocairo-win32font.c
pango/pangocairo-render.c: Update to new Cairo font API.
* pangpopangowin32.h pango/pangowin32-private.h pango/pangowin32.c
pango/pangocairo-win32font.c modules/basic/basic-win32.c: Rename
get_scale_factor() to get_metrics_factor() to match Cairo
|
|
|
|
|
|
|
|
|
|
|
| |
2005-04-04 Hans Breuer <hans@breuer.org>
* pango/pangocairo-win32font.c(pango_cairor_win32_font_get_metrics) :
variable declaration on the start of the block, not C99 everywhere.
* examples/viewer-win32.c : updated to not so recent Pango api changes
* pango/makefile.msc : pangocairo build win32 version, not freetype
|
|
|
|
|
|
|
| |
2005-03-17 Owen Taylor <otaylor@redhat.com>
* pango/pangocairo-win32font.c (_pango_cairo_win32_font_new):
Set win32font->logfont. (How was this working at all?)
|
|
2005-02-24 Owen Taylor <otaylor@redhat.com>
* pango/pangocairo-win32.h pango/pangocairo-win32font.c
pango/pangocairo-win32fontmap.c pango/Makefile.am:
PangoCairoFontMap for win32 fonts.
* pango/pangocairo-fontmap.c: Use PangoCairoWin32FontMap
when available.
* pango/pangowin32.h pango/pangowin32-fontmap.h pango/pangowin32.c:
Add virtual pango_win32_font_select_font()
to prepare a DC for use with a PangoWin32Font, and to release,
pango_win32_font_scale_font() to get logical unit => Pango units scale,
pango_win32_font_done_font() to release resources.
* pango/pangowin32-fontmap.[ch]: Add a find_font() virtual method
to allow subclasses that change how PangoFont lookup and
creation happens.
* pango/pangowin32-fontmap.c: Move initialization into
pango_win32_font_map_init() to facilitate derivation.
* pango/pangowin2.c pango/pangowin32-fontmap.c
pango/pangowin32-private.h: Move PangoWin32Font/PangoWin32FontMap
definitions into pangowin32-private.h to allow derivation for
PangoCairoWin32Font.
* modules/basic/basic-win32.c: Use pango_win32_font_select_font()
and friends.
* modules/basic/basic-win32.c: Use g_utf8_to_utf16 instead
of g_convert for simplicity and speed.
* pango/fonts.c (pango_font_get_font_map) pango/pango-font.h
pango/pangofc-font.c pango/pangowin32.c pango/pango.c pango/pango.def
docs/pango-sections.txt: Add a virtual function to get the fontmap
for a font.
* pango/pangocairo-render.c: Use pango_font_get_font_map()
rather than PangoFcFontMap hack.
* pango/pango-types.h: Move the declaration of PangoFontMap here
to avoid interactions between pango-font.h and pango-fontmap.h.
* pango/pangocairo.h: Remove accidental include
of pangofc-fontmap.h.
|