summaryrefslogtreecommitdiff
path: root/pango/pangoxft.h
Commit message (Collapse)AuthorAgeFilesLines
* Make the following API public:Behdad Esfahbod2008-08-061-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Add G_GNUC_CONST and G_GNUC_PURE annotations.Behdad Esfahbod2007-06-121-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-06-11 Behdad Esfahbod <behdad@gnome.org> * pango/pango-attributes.h: * pango/pango-font.h: * pango/pango-glyph.h: * pango/pango-gravity.h: * pango/pango-language.h: * pango/pango-layout.h: * pango/pango-matrix.h: * pango/pango-ot-private.h: * pango/pango-ot.h: * pango/pango-renderer.h: * pango/pango-script.h: * pango/pango-tabs.h: * pango/pango-utils.h: * pango/pangoatsui-private.h: * pango/pangocairo-atsui.h: * pango/pangocairo-atsuifont.h: * pango/pangocairo-fc.h: * pango/pangocairo-private.h: * pango/pangocairo-win32.h: * pango/pangocairo.h: * pango/pangofc-decoder.h: * pango/pangofc-font.h: * pango/pangofc-fontmap.h: * pango/pangoft2-private.h: * pango/pangoft2.h: * pango/pangowin32-private.h: * pango/pangox-private.h: * pango/pangoxft-render.h: * pango/pangoxft.h: Add G_GNUC_CONST and G_GNUC_PURE annotations. svn path=/trunk/; revision=2345
* Part of Bug 325714 – Pango should respect $LANGUAGEBehdad Esfahbod2007-05-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-05-14 Behdad Esfahbod <behdad@gnome.org> Part of Bug 325714 – Pango should respect $LANGUAGE * pango/pango-ot.h: * pango/pango-ot-ruleset.c (pango_ot_ruleset_get_for), (pango_ot_ruleset_description_hash), (pango_ot_ruleset_description_equal), (pango_ot_ruleset_description_copy), (pango_ot_ruleset_description_free): Add new engine API: PangoOTRulesetDescription pango_ot_ruleset_get_for() pango_ot_ruleset_description_hash() pango_ot_ruleset_description_equal() pango_ot_ruleset_description_copy() pango_ot_ruleset_description_free() The main addition is pango_ot_ruleset_get_for() that takes a ruleset description, ie. script/language and list of GSUB/GPOS features to apply, and returns a ruleset. It manages all the work to cache rulesets, so modules don't have to do that anymore. Given that modules do not deal with just one ruleset anymore (because we want to respect language, and allow user-selected features), this makes their life way easier. * docs/pango-sections.txt: * docs/tmpl/opentype.sgml: Update. svn path=/trunk/; revision=2290
* *.c, *.h: Replace preceding sequences of 8 spaces with tabs.Behdad Esfahbod2007-01-161-1/+1
| | | | | | | | | 2007-01-16 Behdad Esfahbod <behdad@gnome.org> *.c, *.h: Replace preceding sequences of 8 spaces with tabs. svn path=/trunk/; revision=2165
* Up version to 1.7.0.Owen Taylor2004-09-241-23/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fri Sep 24 12:59:22 2004 Owen Taylor <otaylor@redhat.com> * configure.in: Up version to 1.7.0. * pango/pango-renderer.[ch] pango/pango.h pango/Makefile.am: Add PangoRenderer, a base class that is subclassed to produce rendering drivers for different backends and purposes. * pango/pangoft2-private.h pango/pangoft2-render.c pango/pangoft2.c: Move rendering into pangoft2-render.c, use PangoRenderer. * pango/pangoft2-fontmap.c pango/pangoft2-private.h: Add _pango_ft2_font_map_get_renderer() to retrieve a singleton fontmap for the fontmap. * pango/pangoxft-render.[ch] pango/pangoxft.c pango/Makefile.am: Make Xft rendering use PangoRenderer, add publically visible, subclassable PangoXftRenderer. * pango/pangoxft-fontmap.c pango/pangoxft-private.h: Add _pango_xft_font_map_get_renderer() to retrieve a singleton fontmap for the fontmap. * examples/xftview.c examples/Makefile.am: Add a test program using the Xft backend. * docs/*: Update minimally for PangoRenderer.
* Make pangoxft depend on pangoft2.Owen Taylor2003-08-031-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Sat Aug 2 14:33:28 2003 Owen Taylor <otaylor@redhat.com> * pango/Makefile.am (libpangoxft_1_0_la_LIBADD): Make pangoxft depend on pangoft2. * pango/pangofc-fontmap.[ch]: Make pangofc-fontmap.cI into a real base class. * pango/pangofc-font.[ch]: Move some of the pangoxft/ pangoft2 implementation here. * pango/pangoft2.c pango/pangoft2-fontmap.c pango/pangoft2-private.h pango/pangoxft-font.c pango/pangoxft2-fontmap.c pango/pangoxft-private.h: Adapt to the new scheme * modules/*/Makefile.am Modules/*/*/*-fc.c: Don't build separate FT2 and Xft shapers, just build one Fc shaper. * docs/pango-sections.txt docs/pango-docs.sgml docs/tmpl/pangofc-font{,map}.sgml: Basic docs for the new stuff. * configure.in: Up pango_module_version to 1.4.0.
* Switch over the way that module entry points work, taking advantage of theOwen Taylor2003-04-141-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Mon Apr 14 06:02:34 2003 Owen Taylor <otaylor@redhat.com> * modules/thai/{thai-fc.c,thai-shaper.c,thai-x.c}: * modules/*/*-{xft,x,win32.c} pango/pango-engine.h modules/*/Makefile.am: Switch over the way that module entry points work, taking advantage of the new automake capability for per-target CFLAGS for shared sources. * pango/pangofc-font.[ch] pango/pangoxft-font.c pango/pangoft2.c: Add a base class for PangoXft and PangoFT2 font classes so code can be shared between FT2 and Xft backends. * configure.in modules/*/Makefile.am modules/{arabic,basic,hangul,hebrew,indic,thai}: Move *-xft.c to *-fc.c and share between Xft and FT2 backends; adds FT2 backend capabilities for hangul/indic/thai. * pango/pangoxft.h pango/pangoft2.h: Deprecate APIs that moved into PangoFcFont * modules/basic/basic-fc.c (set_glyph): Add kerning handling from FT2 backend.
* Export.Owen Taylor2002-08-061-0/+2
| | | | | | | | | | | | | | Mon Aug 5 21:54:21 2002 Owen Taylor <otaylor@redhat.com> * pango/pangoxft-fontmap.c (pango_xft_get_font_map): Export. * pango/pango-context.[ch]: Add pango_context_get_fontmap(), allow fontmap = NULL for pango_context_set_fontmap(). * pango/pangoxft-font.c pango/pangoxft-fontmap.c (pango_xft_font_get_metrics): More work on allowing displays to be shut down, while leaving basically working fonts behind.
* New function allowing us to shut down a display.Owen Taylor2002-08-021-2/+5
| | | | | | | | Fri Aug 2 12:12:34 2002 Owen Taylor <otaylor@redhat.com> * pango/pangoxft.h pango/pangoxft-fontmap.c (pango_xft_shutdown_display): New function allowing us to shut down a display.
* Patch from Theppitak Karoonboonyanan that factors out common code fromOwen Taylor2002-07-261-1/+4
| | | | | | | | | | | | | | | | | | | | | Fri Jul 26 18:48:49 2002 Owen Taylor <otaylor@redhat.com> * configure.in modules/thai/Makefile.am modules/thai/thai-shaper.[ch] modules/thai/thai-xft.c modules/thai/thai-x.c: Patch from Theppitak Karoonboonyanan that factors out common code from thai-x.c and adds a new Xft shaper for Thai. (#78346) * pango/pangoxft.h pango/pangoxft-font.c: Add pango_xft_font_has_char() to optimize for cases where we don't actually need to load the font. * pango/pangoxft.h: Document pango_xft_font_get_glyph(). * modules/basic/basic-xft.c (basic_engine_shape): Clean up an unused variable warning.
* New function to allow tweaking of FcPattern default substitution (forOwen Taylor2002-07-031-0/+11
| | | | | | | | | | | | | | | | | Mon Jul 1 19:45:10 2002 Owen Taylor <otaylor@redhat.com> * pango/pangoxft-fontmap.c (pango_xft_set_default_substitute): New function to allow tweaking of FcPattern default substitution (for XSETTINGS support.) * pango/pangoft2-fontmap.c pango/pangoft2.[ch] pango/pangoft2-private.h: Rationalize DPI and context creation by adding: pango_ft2_font_map_new() pango_ft2_font_map_set_resolution() pango_ft2_font_map_set_default_substitute() pango_ft2_font_map_create_context()
* on Jun 3 18:56:09 2002 Owen Taylor <otaylor@redhat.com>Owen Taylor2002-06-041-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Xft2 and fontconfig conversion, based largely on a patch from Keith Packard. * configure.in acconfig.h: Add checks for fontconfig, switch Xft checks to switch for Xft2 using pkg-config. * pangoxft.pc.in pangoxft.pc.in modules/{arabic,basic,hebrew,indic,tamil}/Makefile.am pango/Makefile.am: Reflect new Xft/fontconfig dependencies. * pango/pangoxft-private.h pango/pangoxft-fontmap.c modules/arabic/arabic-xft.c modules/indic/indic-xft.c: Switch over to using Xft2 and fontconfig. * pango/pangoft2.c pango/pangoft2-fontmap.c pango/pangoft2-private.h pango/pango/Makefile.am: Remove usage of mini-xft in favor of fontconfig. * pango/pango-ot.h pango/opentype/pango-ot-info.c pango/pangoxft.h modules/arabic/arabic-{xft,ft2}.c modules/indic/indic-xft.c: Attach OpenType information directly to the FT_Face structure using FT_Generic. * modules/tamil/Makefile.am modules/tamil/tamil-xft.c configure.in: Remove this module, no longer needed. * pango/pangoxft-font.c (pango_xft_real_render): Coalesce calls to Xft rendering functions.
* Add a function pango_xft_picture_render() to render onto an Xft pictureOwen Taylor2001-11-051-8/+15
| | | | | | | | Mon Nov 5 12:23:07 2001 Owen Taylor <otaylor@redhat.com> * pango/pangoxft.h pango/pangoxft-font.c: Add a function pango_xft_picture_render() to render onto an Xft picture directly linstead of using the XftDraw wrapper object.
* Up to 0.19.Owen Taylor2001-09-181-8/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tue Sep 18 15:47:08 2001 Owen Taylor <otaylor@redhat.com> * configure.in (PANGO_MINOR_VERSION): Up to 0.19. * pango/pango-font.h pango/pango-fontmap.[ch] pango/fonts.c pango/pangoxft-fontmap.c pango/pangoft-fontmap.c pango/pango-context.[ch] pango/pangox-fontmap.c: Add new PangoFontFace and PangoFontFamily object types, and change the font listing API to list faces and families, instead of face names and font descriptions. * pango/pango-font.h pango/fonts.c: Make PangoFontDescription an opaque heap-allocated structure, add accessors and convenience functions. * pango/pango-font.h pango/pango-private.h: Make PangoFontMetrics heap allocated, protect the structure definition with #ifdef PANGO_ENABLE_BACKEND, and add getters for the fields. * pango/pango-attributes.[ch] ( pango_attr_iterator_get_font): instead of providing a base font description and one to fill in, provide a single font description to modify based on the attributes. * pango/pango-attributes.[ch]: Fix PangoAttrFontDesc to have a PangoFontDescription by reference, not by value. * pango/pango-utils.[ch]: make pango_parse_style() and friends take pointers to individual enumerations instead of to a PangoFontDescription structure. * pango/*.c: Fix for the PangoFontDescription and PangoFontMetrics changes. * pango/pango-{break,engine,indic,ot,xft}.h pango/Makefile.am pango/opentype/Makefile.am: Protect portions with PANGO_ENABLE_ENGINE to shrink the public API. * modules/*/Makefile.am: -DPANGO_ENABLE_ENGINE. * pango/{pangox.h,pangox-private.h} modules/basic/basic-x.c: Move pango_x_font_get_unknown_glyph() into public header since it is used from modules. * pango/pango-{context,font,fontmap,modules.utils}.h pango/Makefile.am: Protect portions with PANGO_ENABLE_BACKEND to shrink the public API. * pango/*.h: Use G_BEGIN/END_DECLS * examples/viewer-qt.[cc,h]: Fix for changes to font listing API, PangoFontDescription. * pango/pango-indic.h modules/indic/*: Since we install this header fix it up to Pango conventions, namespece ZERO_WIDTH_JOINER, ZERO_WIDTH_NON_JOINER. * docs/pango-sections.txt: Updated.
* Add opentype/.Owen Taylor2000-12-211-1/+1
| | | | | | | | | | | | | | | | Wed Dec 20 19:53:09 2000 Owen Taylor <otaylor@redhat.com> * docs/Makefile.am (IGNORE_HFILES): Add opentype/. * modules/{basic/basic,arabic/arabic}-xft.c: Include pango-engine.h. * pango/pangoxft.h: Don't include pango.h to avoid getting pango-enum-types.h. * pango/Makefile.am (pangoinclude_HEADERS): Move XFT_HFILES out of pango_headers, since mkenums.pl shouldn't be run on it.
* Since Xft may only be available statically without shlib deps, check forOwen Taylor2000-12-201-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | Tue Dec 19 22:47:16 2000 Owen Taylor <otaylor@redhat.com> * configure.in pango-config.in pangoxft.pc.in modules/basic/Makefile.am: Since Xft may only be available statically without shlib deps, check for FreeType libs explicitly and include them when linking, otherwise things won't work. Also, define FREETYPE_CFLAGS from freetype-config --cflags. * modules/basic/basic-xft.c pango/pangoxft-font{,map}.c: Fool Xft into not converting glyph indices by loading the face unencoded then calling FT_Set_Charmap ourselves. * pango/Makefile.am pango/pango-ot.h pango/opentype/* :Add start of opentype handling - most of the actually meat of the code here is the OpenType layout code from FreeType 1 ported to freetype2 and adapted slighlty for our purposes. Also, includes a incomplete OpenType-table-dumping code useful for figuring out what is going on. * pango/pangoxft.h pango/pangoxft-font.h: Add calls for getting FT_Face and PangoOTInfo from PangoXftFont. * modules/arabic/{Makefile.am,arabic-ot.[ch],arabic-xft.c}: Initial support for rendering Arabic with OpenType fonts.
* Add PANGO_XFT_IS_FONT to the public header.Owen Taylor2000-12-151-0/+5
| | | | | | | Thu Dec 14 20:34:18 2000 Owen Taylor <otaylor@redhat.com> * pango/pangoxft.h pango/pangoxft-font.c: (PANGO_TYPE_XFT_FONT): Add PANGO_XFT_IS_FONT to the public header.
* Fix macro breakage.Owen Taylor2000-12-151-0/+61
Thu Dec 14 19:00:46 2000 Owen Taylor <otaylor@redhat.com> * modules/indic/pango-indic-script.h: Fix macro breakage. * modules/basic/tables-big.i: Remove extra copy of basic_ranges. * modules/thai/thai.c: Fix various warnings. * configure.in Makefile.am pangoxft.pc.in pango-config.in modules/basic/Makefile.am modules/basic/basic-xft.c pango/Makefile.am pango/pangoxft-font.[ch] pango/pangoxft-fontmap.c pango/pangoxft.h pango/pangoxft-private.h: Initial support for rendering via Xft and the Xrender extension.