Ignore:
Timestamp:
Feb 11, 2010, 11:19:06 PM (15 years ago)
Author:
Dmitry A. Kuminov
Message:

trunk: Merged in qt 4.6.1 sources.

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk

  • trunk/src/3rdparty/harfbuzz/src/harfbuzz-shaper.h

    r2 r561  
    6363        HB_Script_Runic,
    6464        HB_Script_Khmer,
     65        HB_Script_Nko,
    6566        HB_Script_Inherited,
    6667        HB_ScriptCount = HB_Script_Inherited
     
    103104        HB_Script_Phoenician = Common,
    104105        HB_Script_PhagsPa = Common,
    105         HB_Script_Nko = Common
    106106        */
    107107} HB_Script;
     
    243243} HB_FontRec;
    244244
    245 typedef struct {
    246     const HB_UChar16 *string;
    247     hb_uint32 stringLength;
    248     HB_ScriptItem item;
    249     HB_Font font;
    250     HB_Face face;
    251     int shaperFlags; /* HB_ShaperFlags */
    252 
    253     HB_Bool glyphIndicesPresent; /* set to true if the glyph indicies are already setup in the glyphs array */
    254     hb_uint32 initialGlyphCount;
    255 
    256     hb_uint32 num_glyphs; /* in: available glyphs out: glyphs used/needed */
    257     HB_Glyph *glyphs; /* out parameter */
    258     HB_GlyphAttributes *attributes; /* out */
    259     HB_Fixed *advances; /* out */
    260     HB_FixedPoint *offsets; /* out */
    261     unsigned short *log_clusters; /* out */
     245typedef struct HB_ShaperItem_ HB_ShaperItem;
     246
     247struct HB_ShaperItem_ {
     248    const HB_UChar16 *string;               /* input: the Unicode UTF16 text to be shaped */
     249    hb_uint32 stringLength;                 /* input: the length of the input in 16-bit words */
     250    HB_ScriptItem item;                     /* input: the current run to be shaped: a run of text all in the same script that is a substring of <string> */
     251    HB_Font font;                           /* input: the font: scale, units and function pointers supplying glyph indices and metrics */
     252    HB_Face face;                           /* input: the shaper state; current script, access to the OpenType tables , etc. */
     253    int shaperFlags;                        /* input (unused) should be set to 0; intended to support flags defined in HB_ShaperFlag */
     254    HB_Bool glyphIndicesPresent;            /* input: true if the <glyphs> array contains glyph indices ready to be shaped */
     255    hb_uint32 initialGlyphCount;            /* input: if glyphIndicesPresent is true, the number of glyph indices in the <glyphs> array */
     256
     257    hb_uint32 num_glyphs;                   /* input: capacity of output arrays <glyphs>, <attributes>, <advances>, <offsets>, and <log_clusters>; */
     258                                            /* output: required capacity (may be larger than actual capacity) */
     259
     260    HB_Glyph *glyphs;                       /* output: <num_glyphs> indices of shaped glyphs */
     261    HB_GlyphAttributes *attributes;         /* output: <num_glyphs> glyph attributes */
     262    HB_Fixed *advances;                     /* output: <num_glyphs> advances */
     263    HB_FixedPoint *offsets;                 /* output: <num_glyphs> offsets */
     264    unsigned short *log_clusters;           /* output: for each output glyph, the index in the input of the start of its logical cluster */
    262265
    263266    /* internal */
    264     HB_Bool kerning_applied; /* out: kerning applied by shaper */
    265 } HB_ShaperItem;
     267    HB_Bool kerning_applied;                /* output: true if kerning was applied by the shaper */
     268};
    266269
    267270HB_Bool HB_ShapeItem(HB_ShaperItem *item);
Note: See TracChangeset for help on using the changeset viewer.