harfbuzz-buffer.h

来自「Pango is a library for layout and render」· C头文件 代码 · 共 95 行

H
95
字号
/* * Copyright (C) 1998-2004  David Turner and Werner Lemberg * Copyright (C) 2004,2007  Red Hat, Inc. * * This is part of HarfBuzz, an OpenType Layout engine library. * * Permission is hereby granted, without written agreement and without * license or royalty fees, to use, copy, modify, and distribute this * software and its documentation for any purpose, provided that the * above copyright notice and the following two paragraphs appear in * all copies of this software. * * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH * DAMAGE. * * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND * FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. * * Red Hat Author(s): Owen Taylor, Behdad Esfahbod */#ifndef HARFBUZZ_BUFFER_H#define HARFBUZZ_BUFFER_H#include "harfbuzz-global.h"HB_BEGIN_HEADERtypedef struct HB_GlyphItemRec_ {  HB_UInt     gindex;  HB_UInt     properties;  HB_UInt     cluster;  HB_UShort   component;  HB_UShort   ligID;  HB_UShort   gproperties;} HB_GlyphItemRec, *HB_GlyphItem;typedef struct HB_PositionRec_ {  HB_Fixed   x_pos;  HB_Fixed   y_pos;  HB_Fixed   x_advance;  HB_Fixed   y_advance;  HB_UShort  back;            /* number of glyphs to go back				 for drawing current glyph   */  HB_Bool    new_advance;     /* if set, the advance width values are				 absolute, i.e., they won't be				 added to the original glyph's value				 but rather replace them.            */  HB_Short  cursive_chain;   /* character to which this connects,				 may be positive or negative; used				 only internally                     */} HB_PositionRec, *HB_Position;typedef struct HB_BufferRec_{   HB_UInt    allocated;  HB_UInt    in_length;  HB_UInt    out_length;  HB_UInt    in_pos;  HB_UInt    out_pos;    HB_Bool       separate_out;  HB_GlyphItem  in_string;  HB_GlyphItem  out_string;  HB_GlyphItem  alt_string;  HB_Position   positions;  HB_UShort      max_ligID;} HB_BufferRec, *HB_Buffer;HB_Errorhb_buffer_new( HB_Buffer *buffer );voidhb_buffer_free( HB_Buffer buffer );voidhb_buffer_clear( HB_Buffer buffer );HB_Errorhb_buffer_add_glyph( HB_Buffer buffer,		      HB_UInt    glyph_index,		      HB_UInt    properties,		      HB_UInt    cluster );HB_END_HEADER#endif /* HARFBUZZ_BUFFER_H */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?