Xft.h revision c76ae52d
1c76ae52dSmrg/* 2c76ae52dSmrg * $Id: Xft.h,v 1.1.1.1 2008/07/30 02:49:11 mrg Exp $ 3c76ae52dSmrg * 4c76ae52dSmrg * Copyright © 2000 Keith Packard 5c76ae52dSmrg * 6c76ae52dSmrg * Permission to use, copy, modify, distribute, and sell this software and its 7c76ae52dSmrg * documentation for any purpose is hereby granted without fee, provided that 8c76ae52dSmrg * the above copyright notice appear in all copies and that both that 9c76ae52dSmrg * copyright notice and this permission notice appear in supporting 10c76ae52dSmrg * documentation, and that the name of Keith Packard not be used in 11c76ae52dSmrg * advertising or publicity pertaining to distribution of the software without 12c76ae52dSmrg * specific, written prior permission. Keith Packard makes no 13c76ae52dSmrg * representations about the suitability of this software for any purpose. It 14c76ae52dSmrg * is provided "as is" without express or implied warranty. 15c76ae52dSmrg * 16c76ae52dSmrg * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 17c76ae52dSmrg * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO 18c76ae52dSmrg * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR 19c76ae52dSmrg * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 20c76ae52dSmrg * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 21c76ae52dSmrg * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 22c76ae52dSmrg * PERFORMANCE OF THIS SOFTWARE. 23c76ae52dSmrg */ 24c76ae52dSmrg 25c76ae52dSmrg#ifndef _XFT_H_ 26c76ae52dSmrg#define _XFT_H_ 27c76ae52dSmrg 28c76ae52dSmrg/* 29c76ae52dSmrg * Current Xft version number. This same number 30c76ae52dSmrg * must appear in the Xft configure.ac file. Yes, 31c76ae52dSmrg * it'a a pain to synchronize version numbers like this. 32c76ae52dSmrg */ 33c76ae52dSmrg 34c76ae52dSmrg#define XFT_MAJOR 2 35c76ae52dSmrg#define XFT_MINOR 1 36c76ae52dSmrg#define XFT_REVISION 12 37c76ae52dSmrg#define XFT_VERSION ((XFT_MAJOR * 10000) + (XFT_MINOR * 100) + (XFT_REVISION)) 38c76ae52dSmrg#define XftVersion XFT_VERSION 39c76ae52dSmrg 40c76ae52dSmrg#include <stdarg.h> 41c76ae52dSmrg#include <ft2build.h> 42c76ae52dSmrg#include FT_FREETYPE_H 43c76ae52dSmrg#include <fontconfig/fontconfig.h> 44c76ae52dSmrg#include <X11/extensions/Xrender.h> 45c76ae52dSmrg 46c76ae52dSmrg#include <X11/Xfuncproto.h> 47c76ae52dSmrg/* #include <X11/Xosdefs.h>*/ 48c76ae52dSmrg#ifndef _X_SENTINEL 49c76ae52dSmrg# define _X_SENTINEL(x) 50c76ae52dSmrg#endif 51c76ae52dSmrg 52c76ae52dSmrg#ifndef _XFT_NO_COMPAT_ 53c76ae52dSmrg#include <X11/Xft/XftCompat.h> 54c76ae52dSmrg#endif 55c76ae52dSmrg 56c76ae52dSmrg#define XFT_CORE "core" 57c76ae52dSmrg#define XFT_RENDER "render" 58c76ae52dSmrg#define XFT_XLFD "xlfd" 59c76ae52dSmrg#define XFT_MAX_GLYPH_MEMORY "maxglyphmemory" 60c76ae52dSmrg#define XFT_MAX_UNREF_FONTS "maxunreffonts" 61c76ae52dSmrg 62c76ae52dSmrgextern FT_Library _XftFTlibrary; 63c76ae52dSmrg 64c76ae52dSmrgtypedef struct _XftFontInfo XftFontInfo; 65c76ae52dSmrg 66c76ae52dSmrgtypedef struct _XftFont { 67c76ae52dSmrg int ascent; 68c76ae52dSmrg int descent; 69c76ae52dSmrg int height; 70c76ae52dSmrg int max_advance_width; 71c76ae52dSmrg FcCharSet *charset; 72c76ae52dSmrg FcPattern *pattern; 73c76ae52dSmrg} XftFont; 74c76ae52dSmrg 75c76ae52dSmrgtypedef struct _XftDraw XftDraw; 76c76ae52dSmrg 77c76ae52dSmrgtypedef struct _XftColor { 78c76ae52dSmrg unsigned long pixel; 79c76ae52dSmrg XRenderColor color; 80c76ae52dSmrg} XftColor; 81c76ae52dSmrg 82c76ae52dSmrgtypedef struct _XftCharSpec { 83c76ae52dSmrg FcChar32 ucs4; 84c76ae52dSmrg short x; 85c76ae52dSmrg short y; 86c76ae52dSmrg} XftCharSpec; 87c76ae52dSmrg 88c76ae52dSmrgtypedef struct _XftCharFontSpec { 89c76ae52dSmrg XftFont *font; 90c76ae52dSmrg FcChar32 ucs4; 91c76ae52dSmrg short x; 92c76ae52dSmrg short y; 93c76ae52dSmrg} XftCharFontSpec; 94c76ae52dSmrg 95c76ae52dSmrgtypedef struct _XftGlyphSpec { 96c76ae52dSmrg FT_UInt glyph; 97c76ae52dSmrg short x; 98c76ae52dSmrg short y; 99c76ae52dSmrg} XftGlyphSpec; 100c76ae52dSmrg 101c76ae52dSmrgtypedef struct _XftGlyphFontSpec { 102c76ae52dSmrg XftFont *font; 103c76ae52dSmrg FT_UInt glyph; 104c76ae52dSmrg short x; 105c76ae52dSmrg short y; 106c76ae52dSmrg} XftGlyphFontSpec; 107c76ae52dSmrg 108c76ae52dSmrg_XFUNCPROTOBEGIN 109c76ae52dSmrg 110c76ae52dSmrg 111c76ae52dSmrg/* xftcolor.c */ 112c76ae52dSmrgBool 113c76ae52dSmrgXftColorAllocName (Display *dpy, 114c76ae52dSmrg _Xconst Visual *visual, 115c76ae52dSmrg Colormap cmap, 116c76ae52dSmrg _Xconst char *name, 117c76ae52dSmrg XftColor *result); 118c76ae52dSmrg 119c76ae52dSmrgBool 120c76ae52dSmrgXftColorAllocValue (Display *dpy, 121c76ae52dSmrg Visual *visual, 122c76ae52dSmrg Colormap cmap, 123c76ae52dSmrg _Xconst XRenderColor *color, 124c76ae52dSmrg XftColor *result); 125c76ae52dSmrg 126c76ae52dSmrgvoid 127c76ae52dSmrgXftColorFree (Display *dpy, 128c76ae52dSmrg Visual *visual, 129c76ae52dSmrg Colormap cmap, 130c76ae52dSmrg XftColor *color); 131c76ae52dSmrg 132c76ae52dSmrg 133c76ae52dSmrg/* xftcore.c */ 134c76ae52dSmrg 135c76ae52dSmrg/* xftdir.c */ 136c76ae52dSmrgFcBool 137c76ae52dSmrgXftDirScan (FcFontSet *set, _Xconst char *dir, FcBool force); 138c76ae52dSmrg 139c76ae52dSmrgFcBool 140c76ae52dSmrgXftDirSave (FcFontSet *set, _Xconst char *dir); 141c76ae52dSmrg 142c76ae52dSmrg/* xftdpy.c */ 143c76ae52dSmrgBool 144c76ae52dSmrgXftDefaultHasRender (Display *dpy); 145c76ae52dSmrg 146c76ae52dSmrgBool 147c76ae52dSmrgXftDefaultSet (Display *dpy, FcPattern *defaults); 148c76ae52dSmrg 149c76ae52dSmrgvoid 150c76ae52dSmrgXftDefaultSubstitute (Display *dpy, int screen, FcPattern *pattern); 151c76ae52dSmrg 152c76ae52dSmrg/* xftdraw.c */ 153c76ae52dSmrg 154c76ae52dSmrgXftDraw * 155c76ae52dSmrgXftDrawCreate (Display *dpy, 156c76ae52dSmrg Drawable drawable, 157c76ae52dSmrg Visual *visual, 158c76ae52dSmrg Colormap colormap); 159c76ae52dSmrg 160c76ae52dSmrgXftDraw * 161c76ae52dSmrgXftDrawCreateBitmap (Display *dpy, 162c76ae52dSmrg Pixmap bitmap); 163c76ae52dSmrg 164c76ae52dSmrgXftDraw * 165c76ae52dSmrgXftDrawCreateAlpha (Display *dpy, 166c76ae52dSmrg Pixmap pixmap, 167c76ae52dSmrg int depth); 168c76ae52dSmrg 169c76ae52dSmrgvoid 170c76ae52dSmrgXftDrawChange (XftDraw *draw, 171c76ae52dSmrg Drawable drawable); 172c76ae52dSmrg 173c76ae52dSmrgDisplay * 174c76ae52dSmrgXftDrawDisplay (XftDraw *draw); 175c76ae52dSmrg 176c76ae52dSmrgDrawable 177c76ae52dSmrgXftDrawDrawable (XftDraw *draw); 178c76ae52dSmrg 179c76ae52dSmrgColormap 180c76ae52dSmrgXftDrawColormap (XftDraw *draw); 181c76ae52dSmrg 182c76ae52dSmrgVisual * 183c76ae52dSmrgXftDrawVisual (XftDraw *draw); 184c76ae52dSmrg 185c76ae52dSmrgvoid 186c76ae52dSmrgXftDrawDestroy (XftDraw *draw); 187c76ae52dSmrg 188c76ae52dSmrgPicture 189c76ae52dSmrgXftDrawPicture (XftDraw *draw); 190c76ae52dSmrg 191c76ae52dSmrgPicture 192c76ae52dSmrgXftDrawSrcPicture (XftDraw *draw, _Xconst XftColor *color); 193c76ae52dSmrg 194c76ae52dSmrgvoid 195c76ae52dSmrgXftDrawGlyphs (XftDraw *draw, 196c76ae52dSmrg _Xconst XftColor *color, 197c76ae52dSmrg XftFont *pub, 198c76ae52dSmrg int x, 199c76ae52dSmrg int y, 200c76ae52dSmrg _Xconst FT_UInt *glyphs, 201c76ae52dSmrg int nglyphs); 202c76ae52dSmrg 203c76ae52dSmrgvoid 204c76ae52dSmrgXftDrawString8 (XftDraw *draw, 205c76ae52dSmrg _Xconst XftColor *color, 206c76ae52dSmrg XftFont *pub, 207c76ae52dSmrg int x, 208c76ae52dSmrg int y, 209c76ae52dSmrg _Xconst FcChar8 *string, 210c76ae52dSmrg int len); 211c76ae52dSmrg 212c76ae52dSmrgvoid 213c76ae52dSmrgXftDrawString16 (XftDraw *draw, 214c76ae52dSmrg _Xconst XftColor *color, 215c76ae52dSmrg XftFont *pub, 216c76ae52dSmrg int x, 217c76ae52dSmrg int y, 218c76ae52dSmrg _Xconst FcChar16 *string, 219c76ae52dSmrg int len); 220c76ae52dSmrg 221c76ae52dSmrgvoid 222c76ae52dSmrgXftDrawString32 (XftDraw *draw, 223c76ae52dSmrg _Xconst XftColor *color, 224c76ae52dSmrg XftFont *pub, 225c76ae52dSmrg int x, 226c76ae52dSmrg int y, 227c76ae52dSmrg _Xconst FcChar32 *string, 228c76ae52dSmrg int len); 229c76ae52dSmrg 230c76ae52dSmrgvoid 231c76ae52dSmrgXftDrawStringUtf8 (XftDraw *draw, 232c76ae52dSmrg _Xconst XftColor *color, 233c76ae52dSmrg XftFont *pub, 234c76ae52dSmrg int x, 235c76ae52dSmrg int y, 236c76ae52dSmrg _Xconst FcChar8 *string, 237c76ae52dSmrg int len); 238c76ae52dSmrg 239c76ae52dSmrgvoid 240c76ae52dSmrgXftDrawStringUtf16 (XftDraw *draw, 241c76ae52dSmrg _Xconst XftColor *color, 242c76ae52dSmrg XftFont *pub, 243c76ae52dSmrg int x, 244c76ae52dSmrg int y, 245c76ae52dSmrg _Xconst FcChar8 *string, 246c76ae52dSmrg FcEndian endian, 247c76ae52dSmrg int len); 248c76ae52dSmrg 249c76ae52dSmrgvoid 250c76ae52dSmrgXftDrawCharSpec (XftDraw *draw, 251c76ae52dSmrg _Xconst XftColor *color, 252c76ae52dSmrg XftFont *pub, 253c76ae52dSmrg _Xconst XftCharSpec *chars, 254c76ae52dSmrg int len); 255c76ae52dSmrg 256c76ae52dSmrgvoid 257c76ae52dSmrgXftDrawCharFontSpec (XftDraw *draw, 258c76ae52dSmrg _Xconst XftColor *color, 259c76ae52dSmrg _Xconst XftCharFontSpec *chars, 260c76ae52dSmrg int len); 261c76ae52dSmrg 262c76ae52dSmrgvoid 263c76ae52dSmrgXftDrawGlyphSpec (XftDraw *draw, 264c76ae52dSmrg _Xconst XftColor *color, 265c76ae52dSmrg XftFont *pub, 266c76ae52dSmrg _Xconst XftGlyphSpec *glyphs, 267c76ae52dSmrg int len); 268c76ae52dSmrg 269c76ae52dSmrgvoid 270c76ae52dSmrgXftDrawGlyphFontSpec (XftDraw *draw, 271c76ae52dSmrg _Xconst XftColor *color, 272c76ae52dSmrg _Xconst XftGlyphFontSpec *glyphs, 273c76ae52dSmrg int len); 274c76ae52dSmrg 275c76ae52dSmrgvoid 276c76ae52dSmrgXftDrawRect (XftDraw *draw, 277c76ae52dSmrg _Xconst XftColor *color, 278c76ae52dSmrg int x, 279c76ae52dSmrg int y, 280c76ae52dSmrg unsigned int width, 281c76ae52dSmrg unsigned int height); 282c76ae52dSmrg 283c76ae52dSmrg 284c76ae52dSmrgBool 285c76ae52dSmrgXftDrawSetClip (XftDraw *draw, 286c76ae52dSmrg Region r); 287c76ae52dSmrg 288c76ae52dSmrg 289c76ae52dSmrgBool 290c76ae52dSmrgXftDrawSetClipRectangles (XftDraw *draw, 291c76ae52dSmrg int xOrigin, 292c76ae52dSmrg int yOrigin, 293c76ae52dSmrg _Xconst XRectangle *rects, 294c76ae52dSmrg int n); 295c76ae52dSmrg 296c76ae52dSmrgvoid 297c76ae52dSmrgXftDrawSetSubwindowMode (XftDraw *draw, 298c76ae52dSmrg int mode); 299c76ae52dSmrg 300c76ae52dSmrg/* xftextent.c */ 301c76ae52dSmrg 302c76ae52dSmrgvoid 303c76ae52dSmrgXftGlyphExtents (Display *dpy, 304c76ae52dSmrg XftFont *pub, 305c76ae52dSmrg _Xconst FT_UInt *glyphs, 306c76ae52dSmrg int nglyphs, 307c76ae52dSmrg XGlyphInfo *extents); 308c76ae52dSmrg 309c76ae52dSmrgvoid 310c76ae52dSmrgXftTextExtents8 (Display *dpy, 311c76ae52dSmrg XftFont *pub, 312c76ae52dSmrg _Xconst FcChar8 *string, 313c76ae52dSmrg int len, 314c76ae52dSmrg XGlyphInfo *extents); 315c76ae52dSmrg 316c76ae52dSmrgvoid 317c76ae52dSmrgXftTextExtents16 (Display *dpy, 318c76ae52dSmrg XftFont *pub, 319c76ae52dSmrg _Xconst FcChar16 *string, 320c76ae52dSmrg int len, 321c76ae52dSmrg XGlyphInfo *extents); 322c76ae52dSmrg 323c76ae52dSmrgvoid 324c76ae52dSmrgXftTextExtents32 (Display *dpy, 325c76ae52dSmrg XftFont *pub, 326c76ae52dSmrg _Xconst FcChar32 *string, 327c76ae52dSmrg int len, 328c76ae52dSmrg XGlyphInfo *extents); 329c76ae52dSmrg 330c76ae52dSmrgvoid 331c76ae52dSmrgXftTextExtentsUtf8 (Display *dpy, 332c76ae52dSmrg XftFont *pub, 333c76ae52dSmrg _Xconst FcChar8 *string, 334c76ae52dSmrg int len, 335c76ae52dSmrg XGlyphInfo *extents); 336c76ae52dSmrg 337c76ae52dSmrgvoid 338c76ae52dSmrgXftTextExtentsUtf16 (Display *dpy, 339c76ae52dSmrg XftFont *pub, 340c76ae52dSmrg _Xconst FcChar8 *string, 341c76ae52dSmrg FcEndian endian, 342c76ae52dSmrg int len, 343c76ae52dSmrg XGlyphInfo *extents); 344c76ae52dSmrg 345c76ae52dSmrg/* xftfont.c */ 346c76ae52dSmrgFcPattern * 347c76ae52dSmrgXftFontMatch (Display *dpy, 348c76ae52dSmrg int screen, 349c76ae52dSmrg _Xconst FcPattern *pattern, 350c76ae52dSmrg FcResult *result); 351c76ae52dSmrg 352c76ae52dSmrgXftFont * 353c76ae52dSmrgXftFontOpen (Display *dpy, int screen, ...) _X_SENTINEL(0); 354c76ae52dSmrg 355c76ae52dSmrgXftFont * 356c76ae52dSmrgXftFontOpenName (Display *dpy, int screen, _Xconst char *name); 357c76ae52dSmrg 358c76ae52dSmrgXftFont * 359c76ae52dSmrgXftFontOpenXlfd (Display *dpy, int screen, _Xconst char *xlfd); 360c76ae52dSmrg 361c76ae52dSmrg/* xftfreetype.c */ 362c76ae52dSmrg 363c76ae52dSmrgFT_Face 364c76ae52dSmrgXftLockFace (XftFont *pub); 365c76ae52dSmrg 366c76ae52dSmrgvoid 367c76ae52dSmrgXftUnlockFace (XftFont *pub); 368c76ae52dSmrg 369c76ae52dSmrgXftFontInfo * 370c76ae52dSmrgXftFontInfoCreate (Display *dpy, _Xconst FcPattern *pattern); 371c76ae52dSmrg 372c76ae52dSmrgvoid 373c76ae52dSmrgXftFontInfoDestroy (Display *dpy, XftFontInfo *fi); 374c76ae52dSmrg 375c76ae52dSmrgFcChar32 376c76ae52dSmrgXftFontInfoHash (_Xconst XftFontInfo *fi); 377c76ae52dSmrg 378c76ae52dSmrgFcBool 379c76ae52dSmrgXftFontInfoEqual (_Xconst XftFontInfo *a, _Xconst XftFontInfo *b); 380c76ae52dSmrg 381c76ae52dSmrgXftFont * 382c76ae52dSmrgXftFontOpenInfo (Display *dpy, 383c76ae52dSmrg FcPattern *pattern, 384c76ae52dSmrg XftFontInfo *fi); 385c76ae52dSmrg 386c76ae52dSmrgXftFont * 387c76ae52dSmrgXftFontOpenPattern (Display *dpy, FcPattern *pattern); 388c76ae52dSmrg 389c76ae52dSmrgXftFont * 390c76ae52dSmrgXftFontCopy (Display *dpy, XftFont *pub); 391c76ae52dSmrg 392c76ae52dSmrgvoid 393c76ae52dSmrgXftFontClose (Display *dpy, XftFont *pub); 394c76ae52dSmrg 395c76ae52dSmrgFcBool 396c76ae52dSmrgXftInitFtLibrary(void); 397c76ae52dSmrg 398c76ae52dSmrg/* xftglyphs.c */ 399c76ae52dSmrgvoid 400c76ae52dSmrgXftFontLoadGlyphs (Display *dpy, 401c76ae52dSmrg XftFont *pub, 402c76ae52dSmrg FcBool need_bitmaps, 403c76ae52dSmrg _Xconst FT_UInt *glyphs, 404c76ae52dSmrg int nglyph); 405c76ae52dSmrg 406c76ae52dSmrgvoid 407c76ae52dSmrgXftFontUnloadGlyphs (Display *dpy, 408c76ae52dSmrg XftFont *pub, 409c76ae52dSmrg _Xconst FT_UInt *glyphs, 410c76ae52dSmrg int nglyph); 411c76ae52dSmrg 412c76ae52dSmrg#define XFT_NMISSING 256 413c76ae52dSmrg 414c76ae52dSmrgFcBool 415c76ae52dSmrgXftFontCheckGlyph (Display *dpy, 416c76ae52dSmrg XftFont *pub, 417c76ae52dSmrg FcBool need_bitmaps, 418c76ae52dSmrg FT_UInt glyph, 419c76ae52dSmrg FT_UInt *missing, 420c76ae52dSmrg int *nmissing); 421c76ae52dSmrg 422c76ae52dSmrgFcBool 423c76ae52dSmrgXftCharExists (Display *dpy, 424c76ae52dSmrg XftFont *pub, 425c76ae52dSmrg FcChar32 ucs4); 426c76ae52dSmrg 427c76ae52dSmrgFT_UInt 428c76ae52dSmrgXftCharIndex (Display *dpy, 429c76ae52dSmrg XftFont *pub, 430c76ae52dSmrg FcChar32 ucs4); 431c76ae52dSmrg 432c76ae52dSmrg/* xftinit.c */ 433c76ae52dSmrgFcBool 434c76ae52dSmrgXftInit (_Xconst char *config); 435c76ae52dSmrg 436c76ae52dSmrgint 437c76ae52dSmrgXftGetVersion (void); 438c76ae52dSmrg 439c76ae52dSmrg/* xftlist.c */ 440c76ae52dSmrg 441c76ae52dSmrgFcFontSet * 442c76ae52dSmrgXftListFonts (Display *dpy, 443c76ae52dSmrg int screen, 444c76ae52dSmrg ...) _X_SENTINEL(0); 445c76ae52dSmrg 446c76ae52dSmrg/* xftname.c */ 447c76ae52dSmrgFcPattern 448c76ae52dSmrg*XftNameParse (_Xconst char *name); 449c76ae52dSmrg 450c76ae52dSmrg/* xftrender.c */ 451c76ae52dSmrgvoid 452c76ae52dSmrgXftGlyphRender (Display *dpy, 453c76ae52dSmrg int op, 454c76ae52dSmrg Picture src, 455c76ae52dSmrg XftFont *pub, 456c76ae52dSmrg Picture dst, 457c76ae52dSmrg int srcx, 458c76ae52dSmrg int srcy, 459c76ae52dSmrg int x, 460c76ae52dSmrg int y, 461c76ae52dSmrg _Xconst FT_UInt *glyphs, 462c76ae52dSmrg int nglyphs); 463c76ae52dSmrg 464c76ae52dSmrgvoid 465c76ae52dSmrgXftGlyphSpecRender (Display *dpy, 466c76ae52dSmrg int op, 467c76ae52dSmrg Picture src, 468c76ae52dSmrg XftFont *pub, 469c76ae52dSmrg Picture dst, 470c76ae52dSmrg int srcx, 471c76ae52dSmrg int srcy, 472c76ae52dSmrg _Xconst XftGlyphSpec *glyphs, 473c76ae52dSmrg int nglyphs); 474c76ae52dSmrg 475c76ae52dSmrgvoid 476c76ae52dSmrgXftCharSpecRender (Display *dpy, 477c76ae52dSmrg int op, 478c76ae52dSmrg Picture src, 479c76ae52dSmrg XftFont *pub, 480c76ae52dSmrg Picture dst, 481c76ae52dSmrg int srcx, 482c76ae52dSmrg int srcy, 483c76ae52dSmrg _Xconst XftCharSpec *chars, 484c76ae52dSmrg int len); 485c76ae52dSmrg 486c76ae52dSmrgvoid 487c76ae52dSmrgXftGlyphFontSpecRender (Display *dpy, 488c76ae52dSmrg int op, 489c76ae52dSmrg Picture src, 490c76ae52dSmrg Picture dst, 491c76ae52dSmrg int srcx, 492c76ae52dSmrg int srcy, 493c76ae52dSmrg _Xconst XftGlyphFontSpec *glyphs, 494c76ae52dSmrg int nglyphs); 495c76ae52dSmrg 496c76ae52dSmrgvoid 497c76ae52dSmrgXftCharFontSpecRender (Display *dpy, 498c76ae52dSmrg int op, 499c76ae52dSmrg Picture src, 500c76ae52dSmrg Picture dst, 501c76ae52dSmrg int srcx, 502c76ae52dSmrg int srcy, 503c76ae52dSmrg _Xconst XftCharFontSpec *chars, 504c76ae52dSmrg int len); 505c76ae52dSmrg 506c76ae52dSmrgvoid 507c76ae52dSmrgXftTextRender8 (Display *dpy, 508c76ae52dSmrg int op, 509c76ae52dSmrg Picture src, 510c76ae52dSmrg XftFont *pub, 511c76ae52dSmrg Picture dst, 512c76ae52dSmrg int srcx, 513c76ae52dSmrg int srcy, 514c76ae52dSmrg int x, 515c76ae52dSmrg int y, 516c76ae52dSmrg _Xconst FcChar8 *string, 517c76ae52dSmrg int len); 518c76ae52dSmrg 519c76ae52dSmrgvoid 520c76ae52dSmrgXftTextRender16 (Display *dpy, 521c76ae52dSmrg int op, 522c76ae52dSmrg Picture src, 523c76ae52dSmrg XftFont *pub, 524c76ae52dSmrg Picture dst, 525c76ae52dSmrg int srcx, 526c76ae52dSmrg int srcy, 527c76ae52dSmrg int x, 528c76ae52dSmrg int y, 529c76ae52dSmrg _Xconst FcChar16 *string, 530c76ae52dSmrg int len); 531c76ae52dSmrg 532c76ae52dSmrgvoid 533c76ae52dSmrgXftTextRender16BE (Display *dpy, 534c76ae52dSmrg int op, 535c76ae52dSmrg Picture src, 536c76ae52dSmrg XftFont *pub, 537c76ae52dSmrg Picture dst, 538c76ae52dSmrg int srcx, 539c76ae52dSmrg int srcy, 540c76ae52dSmrg int x, 541c76ae52dSmrg int y, 542c76ae52dSmrg _Xconst FcChar8 *string, 543c76ae52dSmrg int len); 544c76ae52dSmrg 545c76ae52dSmrgvoid 546c76ae52dSmrgXftTextRender16LE (Display *dpy, 547c76ae52dSmrg int op, 548c76ae52dSmrg Picture src, 549c76ae52dSmrg XftFont *pub, 550c76ae52dSmrg Picture dst, 551c76ae52dSmrg int srcx, 552c76ae52dSmrg int srcy, 553c76ae52dSmrg int x, 554c76ae52dSmrg int y, 555c76ae52dSmrg _Xconst FcChar8 *string, 556c76ae52dSmrg int len); 557c76ae52dSmrg 558c76ae52dSmrgvoid 559c76ae52dSmrgXftTextRender32 (Display *dpy, 560c76ae52dSmrg int op, 561c76ae52dSmrg Picture src, 562c76ae52dSmrg XftFont *pub, 563c76ae52dSmrg Picture dst, 564c76ae52dSmrg int srcx, 565c76ae52dSmrg int srcy, 566c76ae52dSmrg int x, 567c76ae52dSmrg int y, 568c76ae52dSmrg _Xconst FcChar32 *string, 569c76ae52dSmrg int len); 570c76ae52dSmrg 571c76ae52dSmrgvoid 572c76ae52dSmrgXftTextRender32BE (Display *dpy, 573c76ae52dSmrg int op, 574c76ae52dSmrg Picture src, 575c76ae52dSmrg XftFont *pub, 576c76ae52dSmrg Picture dst, 577c76ae52dSmrg int srcx, 578c76ae52dSmrg int srcy, 579c76ae52dSmrg int x, 580c76ae52dSmrg int y, 581c76ae52dSmrg _Xconst FcChar8 *string, 582c76ae52dSmrg int len); 583c76ae52dSmrg 584c76ae52dSmrgvoid 585c76ae52dSmrgXftTextRender32LE (Display *dpy, 586c76ae52dSmrg int op, 587c76ae52dSmrg Picture src, 588c76ae52dSmrg XftFont *pub, 589c76ae52dSmrg Picture dst, 590c76ae52dSmrg int srcx, 591c76ae52dSmrg int srcy, 592c76ae52dSmrg int x, 593c76ae52dSmrg int y, 594c76ae52dSmrg _Xconst FcChar8 *string, 595c76ae52dSmrg int len); 596c76ae52dSmrg 597c76ae52dSmrgvoid 598c76ae52dSmrgXftTextRenderUtf8 (Display *dpy, 599c76ae52dSmrg int op, 600c76ae52dSmrg Picture src, 601c76ae52dSmrg XftFont *pub, 602c76ae52dSmrg Picture dst, 603c76ae52dSmrg int srcx, 604c76ae52dSmrg int srcy, 605c76ae52dSmrg int x, 606c76ae52dSmrg int y, 607c76ae52dSmrg _Xconst FcChar8 *string, 608c76ae52dSmrg int len); 609c76ae52dSmrg 610c76ae52dSmrgvoid 611c76ae52dSmrgXftTextRenderUtf16 (Display *dpy, 612c76ae52dSmrg int op, 613c76ae52dSmrg Picture src, 614c76ae52dSmrg XftFont *pub, 615c76ae52dSmrg Picture dst, 616c76ae52dSmrg int srcx, 617c76ae52dSmrg int srcy, 618c76ae52dSmrg int x, 619c76ae52dSmrg int y, 620c76ae52dSmrg _Xconst FcChar8 *string, 621c76ae52dSmrg FcEndian endian, 622c76ae52dSmrg int len); 623c76ae52dSmrg 624c76ae52dSmrg/* xftstr.c */ 625c76ae52dSmrg 626c76ae52dSmrg/* xftxlfd.c */ 627c76ae52dSmrgFcPattern * 628c76ae52dSmrgXftXlfdParse (_Xconst char *xlfd_orig, Bool ignore_scalable, Bool complete); 629c76ae52dSmrg 630c76ae52dSmrg_XFUNCPROTOEND 631c76ae52dSmrg 632c76ae52dSmrg#endif /* _XFT_H_ */ 633