Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-02-22 10:40:43

0001 /*
0002  * Copyright © 2009  Red Hat, Inc.
0003  * Copyright © 2012  Google, Inc.
0004  *
0005  *  This is part of HarfBuzz, a text shaping library.
0006  *
0007  * Permission is hereby granted, without written agreement and without
0008  * license or royalty fees, to use, copy, modify, and distribute this
0009  * software and its documentation for any purpose, provided that the
0010  * above copyright notice and the following two paragraphs appear in
0011  * all copies of this software.
0012  *
0013  * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
0014  * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
0015  * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
0016  * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
0017  * DAMAGE.
0018  *
0019  * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
0020  * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
0021  * FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS
0022  * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
0023  * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
0024  *
0025  * Red Hat Author(s): Behdad Esfahbod
0026  * Google Author(s): Behdad Esfahbod
0027  */
0028 
0029 #if !defined(HB_H_IN) && !defined(HB_NO_SINGLE_HEADER_ERROR)
0030 #error "Include <hb.h> instead."
0031 #endif
0032 
0033 #ifndef HB_SHAPE_H
0034 #define HB_SHAPE_H
0035 
0036 #include "hb-common.h"
0037 #include "hb-buffer.h"
0038 #include "hb-font.h"
0039 
0040 HB_BEGIN_DECLS
0041 
0042 
0043 HB_EXTERN void
0044 hb_shape (hb_font_t           *font,
0045       hb_buffer_t         *buffer,
0046       const hb_feature_t  *features,
0047       unsigned int         num_features);
0048 
0049 HB_EXTERN hb_bool_t
0050 hb_shape_full (hb_font_t          *font,
0051            hb_buffer_t        *buffer,
0052            const hb_feature_t *features,
0053            unsigned int        num_features,
0054            const char * const *shaper_list);
0055 
0056 HB_EXTERN hb_bool_t
0057 hb_shape_justify (hb_font_t          *font,
0058           hb_buffer_t        *buffer,
0059           const hb_feature_t *features,
0060           unsigned int        num_features,
0061           const char * const *shaper_list,
0062           float               min_target_advance,
0063           float               max_target_advance,
0064           float              *advance, /* IN/OUT */
0065           hb_tag_t           *var_tag, /* OUT */
0066           float              *var_value /* OUT */);
0067 
0068 HB_EXTERN const char **
0069 hb_shape_list_shapers (void);
0070 
0071 
0072 HB_END_DECLS
0073 
0074 #endif /* HB_SHAPE_H */