| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Patch from Chun-wei Fan.
|
|
|
|
|
|
| |
When win32 fontmap goes away, font->fontmap becomes NULL. Deal
with that. Technically speaking, we need to port this to GWeakRef
like the other fontmaps do. But this would do for now.
|
| |
|
|
|
|
|
|
|
| |
The use of Uniscribe script caches was decidedly suboptimal. Use one
persistent SCRIPT_CACHE per Win32 font and script.
Patch by by David E. Hollingsworth and Fredrik Corneliusson, from bug
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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-08-12 Sven Herzberg <sven@imendio.com>
Bug 547432: Deprecation of pango_(backend)_font_map_create_context()
not clean
reviewed by: Behdad Esfahbod
* pango/pangocairo-fontmap.c,
* pango/pangofc-fontmap.c,
* pango/pangoft2-fontmap.c,
* pango/pangowin32.c,
* pango/pangox.c,
* pango/pangoxft-fontmap.c: use "Deprecated:" for deprecation messages;
fix the deprecation version number
svn path=/trunk/; revision=2689
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-08-05 Behdad Esfahbod <behdad@gnome.org>
* pango/pango-context.c:
* pango/pango-context.h:
Make the following API public:
pango_context_new()
pango_context_set_font_map()
* pango/pango-fontmap.c (pango_font_map_create_context):
* pango/pango-fontmap.h:
New public API:
pango_font_map_create_context()
* pango/pangocairo-context.c (pango_cairo_create_context):
* pango/pangocairo-font.c (_pango_cairo_font_get_metrics),
(_pango_cairo_font_private_get_hex_box_info):
* pango/pangocairo-fontmap.c (pango_cairo_font_map_create_context):
* pango/pangocairo.h:
Deprecate pango_cairo_font_map_create_context().
* pango/pangofc-font.c (pango_fc_font_get_metrics):
* pango/pangofc-fontmap.c (pango_fc_font_map_create_context):
* pango/pangofc-fontmap.h:
Deprecate pango_fc_font_map_create_context().
* pango/pangoft2-fontmap.c (pango_ft2_font_map_create_context),
(pango_ft2_get_context):
* pango/pangoft2.h:
Deprecate pango_ft2_font_map_create_context().
* pango/pangowin32.c (pango_win32_get_context),
(pango_win32_font_get_metrics):
* pango/pangowin32.h:
Deprecate pango_win32_get_context().
* pango/pangoxft-font.c (_pango_xft_font_get_mini_font):
* pango/pangoxft-fontmap.c (pango_xft_get_context):
* pango/pangoxft.h:
Deprecate pango_xft_get_context().
* pango/pangox-fontmap.c (pango_x_font_map_for_display):
* pango/pangox.c (get_context_info), (pango_x_get_context),
(pango_x_context_set_funcs), (pango_x_render_layout_line):
Deprecate pango_x_get_context(), again.
* docs/pango-sections.txt:
* docs/tmpl/fonts.sgml:
* pango-view/viewer-pangocairo.c (pangocairo_view_get_context):
* pango-view/viewer-pangoft2.c (pangoft2_view_get_context):
* pango-view/viewer-pangox.c (pangox_view_get_context):
* pango-view/viewer-pangoxft.c (pangoxft_view_get_context):
* pango/check.defs:
* pango/pango.def:
Update.
svn path=/trunk/; revision=2675
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
| |
2008-05-26 Tor Lillqvist <tml@novell.com>
* pango/pangowin32.c
* pango/pangowin32-fontmap.c: Some whitespace cleanup.
svn path=/trunk/; revision=2636
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-05-03 Behdad Esfahbod <behdad@gnome.org>
Bug 531242 – Leak when calculating win32 font coverage
Patch from Daniel Atallah
* pango/pangowin32.c (pango_win32_font_calc_coverage): Plug leak.
svn path=/trunk/; revision=2623
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-02-24 Tor Lillqvist <tml@novell.com>
Bug 515484: Pango on Windows is missing Type 1
font support
Patch from Adrian Johnson.
* pango/pangowin32-private.h (PangoWin32Face): Add has_cmap field
that tells whether the font has a cmap or not. A Type 1 font
doesn't.
* pango/pangowin32.c (pango_win32_font_get_type1_glyph_index): New
static function. Uses GetGlyphIndicesW() to get the glyph indices
for Type 1 fonts. Possibly also TrueType fonts that for some
reason lack the cmap formats we understand.
(pango_win32_font_calc_type1_coverage): New static function. Uses
GetFontUnicodeRanges() to get the coverage for Type 1 fonts, and
possibly TrueType fonts that lack the cmap formats we understand.
(pango_win32_font_get_glyph_index): Set has_cmap to false if the
font doesn't have a cmap. Call
pango_win32_font_get_type1_glyph_index() in that case.
(pango_win32_font_calc_coverage): Set has_cmap to false if the
font doesn't have a cmap. Call
pango_win32_font_calc_type1_coverage() in that case.
* pango/pangowin32-fontmap.c (pango_win32_enum_proc): Accept also
Type 1 fonts.
(pango_win32_insert_font): Initialise has_cmap tentativaly to True.
svn path=/trunk/; revision=2573
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-01-14 Behdad Esfahbod <behdad@gnome.org>
Bug 469313 – Add pango_layout_set_height()
Bug 508179 – PangoGlyphUnit confusion
* pango/pango-layout.h:
* pango/pango-layout-private.h:
* pango/pango-layout.c:
* pango/ellipsize.c (_pango_layout_line_ellipsize):
New public API:
pango_layout_set_height()
See docs for semantics. Currently only negative height values (number
of lines) is implemented.
* pango-view/viewer-render.c (make_layout), (output_body),
(parse_options):
Implement --height.
* pango/pango.def:
* docs/pango-sections.txt:
* docs/tmpl/layout.sgml:
Update.
2008-01-14 Behdad Esfahbod <behdad@gnome.org>
Bug 508179 – PangoGlyphUnit confusion
* pango/pangowin32.c:
* pango/glyphstring.c:
* pango/pango-layout.c (process_item): Remove all traces of
#PangoGlyphUnit
svn path=/trunk/; revision=2542
|
|
|
|
|
|
|
|
|
|
|
|
| |
2007-03-12 Behdad Esfahbod <behdad@gnome.org>
* docs/pango-sections.txt:
* pango/pangowin32-fontmap.c:
* pango/pangowin32.c:
Add new symbols to docs.
svn path=/trunk/; revision=2216
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
svn path=/trunk/; revision=2130
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2006-09-11 Behdad Esfahbod <behdad@gnome.org>
Bug 355435 – Invalid calls to pango_map_get_engine()
Patch from Theppitak Karoonboonyanan
* pango/break.c (pango_get_log_attrs):
* pango/pango-renderer.c (add_underline):
* pango/pangofc-font.c (pango_fc_font_find_shaper):
* pango/pangowin32.c (pango_win32_font_find_shaper):
* pango/pangox.c (pango_x_font_find_shaper):
Pass a PangoScript to pango_map_get_engine, not a gunichar!
|
|
|
|
|
|
|
|
|
|
|
|
| |
2006-05-23 Tor Lillqvist <tml@novell.com>
* pango/pangowin32.c (pango_win32_font_class_init): Initialize the
describe_absolute method pointer correctly.
(pango_win32_font_describe): Scale size to points which is what
pango_font_description_set_size() wants. There has been several
bugs opened around this issue, with more or less misleading
guesses. See for instance #314114. Thanks to Behdad for finally
noticing the real problem here.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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-05-22 Tor Lillqvist <tml@novell.com>
* 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-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-02-28 Tor Lillqvist <tml@novell.com>
* pango/pangowin32-private.h (PING)
* pango/pangowin32.c
* modules/basic/basic-win32.c: Use g_print() instead of printf()
for debugging output, to enable easy redirection using GLib
facilities. (#332855)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2006-02-21 Behdad Esfahbod <behdad@gnome.org>
* pango/fonts.c, pango/glyphstring.c, pango/pango-fontmap.c,
pango/pango-ot-buffer.c, pango/pangocairo-font.c, pango/pangoft2.c,
pango/pangoxft-font.c, pango/shape.c: Change g_critical to g_warning.
We already handle them gracefully.
Bug 331994 – --disable-debug removes G_DISABLE_CAST_CHECKS
Patch from charlet@act-europe.fr
* configure.in: Do not lose PANGO_DEBUG_FLAGS when reassigning.
Bug 331995 – pango_layout_set_text optimization
Patch from charlet@act-europe.fr
* pango/pango-layout.c: Do not validate input text if asserts are
disabled. Moreover, do not truncate input text on invalid sequence.
Bug 331996 – avoid crashes in win32 font handling
Patch from charlet@act-europe.fr
* pango/pangofc-fontmap.c, pango/pangowin32-fontmap.c,
pango/pangowin32.c: if (!font) return NULL in a number of places.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2006-02-04 Behdad Esfahbod <behdad@gnome.org>
* pango/pango-types.h: Change PANGO_GLYPH_EMPTY to 0x0FFFFFFF, to
not overlap with PANGO_GLYPH_UNKNOWN_FLAG (0x10000000).
Define PANGO_GET_UNKNOWN_GLYPH(wc) that simply returns
wc|PANGO_GLYPH_UNKNOWN_FLAG.
* docs/pango-sections.txt, docs/tmpl/glyphs.sgml: Document new
symbols.
* modules/*/*.c: Use PANGO_GET_UNKNOWN_GLYPH instead of various
backend-specific functions.
* pango/pangofc-font.c, pango/pangoft.c, pango/pangoxft-font.c,
* pango/pangowin32.c, pango/pangox.c: Suggest using
PANGO_GET_UNKNOWN_GLYPH in docs.
* pango/pangofc-font.h: Deprecate pango_fc_font_get_unknown_glyph().
* pango/pangowin32.h: Deprecate pango_win32_get_unknown_glyph().
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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-02-02 Behdad Esfahbod <behdad@gnome.org>
* 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/fonts.c, pango/pango-engine-private.h pango/pango-types.h,
pango/pangocairo-fcfont.c, pango/pangocairo-font.c,
pango/pangocairo-private.h, pango/pangocairo-render.c,
pango/pangofc-decoder.c, pango/pangofc-font.c,
pango/pangoft2-render.c, pango/pangoft2.c pango/pangowin32.c,
pango/pangox.c, pango/pangoxft-font.c pango/pangoxft-private.h,
pango/pangoxft-render.c, pango/shape.c: Use PANGO_GLYPH_NULL for
when no glyph should be drawn. Use PANGO_GLYPH_UNKNOWN_FLAG for
all backends to mark unknown flags. There's no need for
pango_font_get_unknown_glyph() anymore, since all backends know
how to handle PANGO_GLYPH_UNKNOWN_FLAG gracefully. We may add
that in the future however. (fixes bug #73147, closes bug #329524)
|
|
|
|
|
|
|
|
| |
2006-01-28 Behdad Esfahbod <behdad@gnome.org>
* pango/pangofc-font.h, pango/pangoft2-render.c, pango/pangowin32.c,
pango/pangoxft-render.c, docs/tmpl/xft-fonts.sgml,
docs/tmp/atsui-fonts.sgml: Documentation improvements.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2006-01-21 Behdad Esfahbod <behdad@gnome.org>
* pango/pango-types.h, pango/pango-utils.h
(pango_matrix_get_font_scale_factor): Make matrix parameter const.
* pango/fonts.c, pango/pango-context.c, pango/pango-coverage.c,
pango/pango-fontset.c, pango/pango-layout.c, pango/pango-renderer.c,
pango/pango-types.h, pango/pango-utils.c,
pango/pangocairo-atsuifont.c, pango/pangofc-font.c,
pango/pangoft2-fontmap.c, pango/pangowin32-fontmap.c,
pango/pangowin32.c, pango/pangox-fontmap.c, pango/pangoxft-font.c:
Replace "Returns:" with "Return value:" in docs.
|
|
|
|
|
|
|
| |
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-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-22 Tor Lillqvist <tml@novell.com>
* pango/pangowin32.c: No need to include modules.h here any
longer.
(pango_win32_get_context): Remove unused variable.
(pango_win32_render_layout_line): Fix underlining. (#304692)
Mention in the doc comment that the DC's text alignment needs to
have TA_BASELINE and TA_LEFT for underlining to be correct.
* pango/pangowin32-fontmap.c: Include modules.h here instead.
(pango_win32_font_map_class_init): Define variable i.
|
|
|
|
|
|
|
|
|
| |
2005-07-21 Owen Taylor <otaylor@redhat.com>
* pango/pangowin32-fontmap.c (pango_win32_font_map_class_init)
Move registration of included modules to here from
pango/pangowin32.c (pango_win32_get_context). (#309337, Hans
Breuer)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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-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>
* 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-03-18 Hans Breuer <hans@breuer.org>
* pango/pango.def pango/pangocairo.def : updated externals
* pango/pangowin32.c(pango_win32_render_transformed) : matrix elements
xy and yx are needed the other way around for XFORM
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
| |
2004-12-18 Tor Lillqvist <tml@iki.fi>
* pango/pangowin32-private.h
* pango/pangowin32.c (pango_win32_font_get_metrics): Cache metrics
by language, like the other backends do. Don't try to get the
width of the 0..9 digit string if the font doesn't cover digits.
|
|
|
|
|
|
|
| |
2004-12-14 Tor Lillqvist <tml@iki.fi>
* pango/pangowin32.c (pango_win32_font_get_metrics): Set also
underline and strikethrough position and thickness. (#161205)
|
|
|
|
|
|
|
|
|
|
| |
2004-11-21 Hans Breuer <hans@breuer.org>
* pango/makefile.msc : updated
* pango/pangowin32.[ch] pango/pangowin32.def : implement
pango_win32_render_transformed() by using the transformation
capabilities of GDI (not available on win9x)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2004-08-06 Hans Breuer <hans@breuer.org>
* pango/pango.def pango/pangoft2.def pango/pangowin32.def
pango/makefile.msc : updated
* pango/pangofc-decoder.c : static the pango_fc_decoder_*init
implementations
* pango/pangowin32.c : remove the duplicated, empty implementation
of pango_win32_font_init(), also replace parent_class variable
with pango_win32_font_parent_class as defined by G_DEFINE_TYPE
* modules/basic/basic-win32.c : implement basic_engine_covers
* pango/testfonts.c : iterate three common font names as was
intended orginally and said in the comment for years
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Sat Jul 10 17:33:38 2004 Owen Taylor <otaylor@redhat.com>
* pango/pangoft2-private.h pango/pangoft2-render.c
pango/pango-context.[ch] pango/pangoft2.[ch] pango/pango-utils.
pango/pango-types.h pango/pangofc-fontmap.c: Make PangoMatrix
arguments const where appropriate.
* pango/pango-context.c pango/fonts.c pango/pangofc-font.c
pangofc-fontmap.c pango/pangoft2.c pango/pangoft2-fontmap.c
pango/pangoxft-font.c pango/pangoxft-fontmap.c
pango/pangowin32-fontmap.c: Use G_DEFINE_TYPE comprehensively.
* pango/pangoft2-private.h pangoft2.c: Un-staticify
pango_ft2_font_get_type.
|
|
|
|
|
|
|
|
| |
Sun Feb 29 15:54:51 2004 Owen Taylor <otaylor@redhat.com>
* pango/pangowin32.c pango/pangox.c pango/pangoft2.c:
Fix up off-by-one for right bound when drawing
PANGO_UNDERLINE_ERROR.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Patch from Nicolas Setton, #114237
* pango/pango-attributes.h pango/pango-markup.c: Add a
new underline type, PANGO_UNDERLINE_ERROR.
* pango/pangowin32.c pango/pangox.c pango/pangoft2.c:
Implement drawing of PANGO_UNDERLINE_ERROR.
* pango/pango-layout.c (pango_layout_run_get_extents):
Handle PANGO_UNDERLINE_ERROR.
|
|
|
|
|
|
|
|
|
| |
2003-02-19 Noah Levitt <nlevitt@columbia.edu>
* pango/pangofc-font.c (pango_fc_font_get_metrics):
* pango/pangowin32.c (pango_win32_font_get_metrics): Make
approximate_digit_width the width of the widest digit, rather than the
average.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2003-12-13 Hans Breuer <hans@breuer.org>
* pango/pango.def pangoft2.def : moved pango_fc_*
to the latter where they live on *nix too.
* pango/makefile.msc : make it build again (including
the Ft2 backend)
* pango/module-defs-fc.c.win32 : if PANGO_MODULE_PREFIX is defined
include the basic backend shaper
* pango/pangowin32.c (pango_win32_render_layout) :
initialize iter before first usage to avoid immediate crashing
* pango/opentype/makefile.msc
pango/modules/makefile.msc : finally build with mscv, too.
[completely untested cause I'm not able to type, write or read
any of these languages]
* modules/modules.def : follow module function renaming/changes
* modules/basic/basic-win32.c : register the right engine, i.e.
make it compile
|