tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

hb-shape.h (2344B)


      1 /*
      2 * Copyright © 2009  Red Hat, Inc.
      3 * Copyright © 2012  Google, Inc.
      4 *
      5 *  This is part of HarfBuzz, a text shaping library.
      6 *
      7 * Permission is hereby granted, without written agreement and without
      8 * license or royalty fees, to use, copy, modify, and distribute this
      9 * software and its documentation for any purpose, provided that the
     10 * above copyright notice and the following two paragraphs appear in
     11 * all copies of this software.
     12 *
     13 * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
     14 * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
     15 * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
     16 * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
     17 * DAMAGE.
     18 *
     19 * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
     20 * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
     21 * FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS
     22 * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
     23 * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
     24 *
     25 * Red Hat Author(s): Behdad Esfahbod
     26 * Google Author(s): Behdad Esfahbod
     27 */
     28 
     29 #if !defined(HB_H_IN) && !defined(HB_NO_SINGLE_HEADER_ERROR)
     30 #error "Include <hb.h> instead."
     31 #endif
     32 
     33 #ifndef HB_SHAPE_H
     34 #define HB_SHAPE_H
     35 
     36 #include "hb-common.h"
     37 #include "hb-buffer.h"
     38 #include "hb-font.h"
     39 
     40 HB_BEGIN_DECLS
     41 
     42 
     43 HB_EXTERN void
     44 hb_shape (hb_font_t           *font,
     45   hb_buffer_t         *buffer,
     46   const hb_feature_t  *features,
     47   unsigned int         num_features);
     48 
     49 HB_EXTERN hb_bool_t
     50 hb_shape_full (hb_font_t          *font,
     51        hb_buffer_t        *buffer,
     52        const hb_feature_t *features,
     53        unsigned int        num_features,
     54        const char * const *shaper_list);
     55 
     56 #ifdef HB_EXPERIMENTAL_API
     57 HB_EXTERN hb_bool_t
     58 hb_shape_justify (hb_font_t          *font,
     59 	  hb_buffer_t        *buffer,
     60 	  const hb_feature_t *features,
     61 	  unsigned int        num_features,
     62 	  const char * const *shaper_list,
     63 	  float               min_target_advance,
     64 	  float               max_target_advance,
     65 	  float              *advance, /* IN/OUT */
     66 	  hb_tag_t           *var_tag, /* OUT */
     67 	  float              *var_value /* OUT */);
     68 #endif
     69 
     70 HB_EXTERN const char **
     71 hb_shape_list_shapers (void);
     72 
     73 
     74 HB_END_DECLS
     75 
     76 #endif /* HB_SHAPE_H */