| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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-31 Behdad Esfahbod <behdad@gnome.org>
* pango/pangocairo-private.h, pango/pangocairo-font.c,
* pango/pangocairo-render.c: Hint hexbox. Also draw a singl-row
hexbox for very small sizes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2006-01-30 Behdad Esfahbod <behdad@gnome.org>
* pango/shape.c (pango_shape):
* pango/fonts.c (pango_font_get_glyph_extents):
* pango/pangocairo-font.c (_pango_cairo_font_install):
Improve error handling in high-frequency functions: Only warn
once.
* pango-impl-utils.h, pangoutils.h:
* pangocairo-private.h, pangocairo-font.c:
Add machinery for above: _pango_warning_history and
_pango_cairo_warning_history.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
| |
2005-12-05 Behdad Esfahbod <behdad@gnome.org>
* pango/pangocairo-fcfont.c, pango/pangocairo-private.h,
pango/pangocairo-render.c: Draw an empty dashed box on missing glyphs
for cairo-fc backend.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2005-11-04 Behdad Esfahbod <behdad@gnome.org>
* configure.in, examples/argcontext.c examples/cairoview.c,
examples/renderdemo.c, examples/renderdemo.h examples/xftview.c,
modules/basic/basic-x.c, modules/hangul/hangul-fc.c,
modules/hebrew/hebrew-shaper.c, modules/hebrew/hebrew-shaper.h,
modules/indic/indic-fc.c, modules/indic/mprefixups.c,
modules/syriac/syriac-fc.c, pango/break.c pango/fonts.c,
pango/modules.c, pango/pango-coverage.c pango/pango-engine.c,
pango/pango-engine.h, pango/pango-fontmap.c,
pango/pango-fontset.c, pango/pango-impl-utils.h,
pango/pango-layout.c, pango/pango-layout.h,
pango/pango-renderer.c, pango/pango-script.c,
pango/pango-utils.c, pango/pangocairo-fc.h,
pango/pangocairo-font.c, pango/pangocairo-fontmap.c,
pango/pangocairo-private.h, pango/pangofc-decoder.c,
pango/pangofc-font.c, pango/pangofc-fontmap.c pango/pangoft2.c,
pango/pangox-fontcache.c, pango/pangox-fontmap.c pango/pangox.c,
pango/pangoxft-font.c, pango/querymodules.c,
pango/opentype/ftglue.c, pango/opentype/ftxgpos.c,
pango/opentype/ftxopen.c, pango/opentype/pango-ot-buffer.c,
pango/opentype/pango-ot-info.c,
pango/opentype/pango-ot-ruleset.c, tests/dump-boundaries.c,
tests/testboundaries.c, tests/testcolor.c tests/testiter.c,
tests/testscript.c: Turn various gcc warnings off. Adding const,
adding static, fully initializing structs, match signedness in
comparisons. (#317804)
* tests/testscript.c, tools/gen-script-for-lang.c:
(scripts_for_file): Pass error->message instead of error to fail(),
which was wrong.
(compare_lang): Fix typo comparing a and a instead of a and b.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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-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-02-03 Owen Taylor <otaylor@redhat.com>
* examples/cairosimple.c: Open the file with mode "wb", include
cairo-png.h.
* examples/xftview.c examples/cairoview.c: Set WM_NORMAL_HINTS to avoid
triggering a metacity bug.
* examples/cairoview.c: Include cairo-xlib.h.
* configure.in: Add checks for the Win32 Cairo backend. (not committing
the code yet).
* examples/Makefile.am pango/Makefile.am: add CAIRO_CFLAGS.
* pango/pangocairo-fc.h pango/pangocairo-fcfont.c
pango/pangocairo-fcfontmap.c pango/pangofc-fontmap.[ch]: Rework
Cairo/Fontconfig backend to use the current Cairo API. Make
some PangoFcFontMap changes to enable that.
* pango/pango/pangocairo-private.h pango/pangocairo-render.c:
Update for cairo_font_t changes.
|
|
Sat Jan 8 16:46:37 2005 Owen Taylor <otaylor@redhat.com>
* configure.in: Add checks for Cairo
* pango/Makefile.am: Add libpangocairo.
* pango/pangocairo-font.c pango/pangocairo-fontmap.c
pango/pangocairo.h pango/pangocairo-private.h
pango/pangocairo-fcfont.c pango/pangocairo-fcfontmap.c
pango/pangocairo-fc.h: Start of a Cairo/FreeType backend.
* pango/pangofc-fontmap.[ch]: Add a "get_render_key"
virtual function to allow subclasses to specialize the
details of how caching works. Add a default implementation
that's a little more sophisticated than what was there
before.
* pango/pangoft2-private.h pangofc-font.c pangoft2.c:
Move default implementations of has_char(), get_glyph()
to the base class.
* pango/pangofc-private.h pango/pangoft2-private.h:
Move PANGO_UNITS_26_6 and friends to pango/pangofc-private.h.
* examples/renderdemo.[ch] examples/pangoft2topgm.c
examples/xftview.c: Allow passing in a custom function
to transform drawing.
* examples/Makefile.am examples/cairoview.c: Add a
Cairo/Xlib example program.
* examples/cairosimple.c: Simple Cairo example with
output to a PNG.
* pango/pango-layout.c (pango_layout_line_get_extents): Fix
bug where line ink rect was always including 0, 0.
|