1049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/***************************************************************************/
2049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*                                                                         */
3049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*  ftsynth.h                                                              */
4049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*                                                                         */
5049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*    FreeType synthesizing code for emboldening and slanting              */
6049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*    (specification).                                                     */
7049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*                                                                         */
8ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease/*  Copyright 2000-2001, 2003, 2006, 2008, 2012, 2013 by                   */
9049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
10049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*                                                                         */
11049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*  This file is part of the FreeType project, and may only be used,       */
12049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*  modified, and distributed under the terms of the FreeType project      */
13049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
14049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*  this file you indicate that you have read the license and              */
15049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*  understand and accept it fully.                                        */
16049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*                                                                         */
17049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/***************************************************************************/
18049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
19049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
20049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
21049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
22049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
23049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
24049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
25049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*********                                                       *********/
260a9d06e2b5cf75c3d6ba958026bfdf4745f576d6The Android Open Source Project  /*********        WARNING, THIS IS ALPHA CODE!  THIS API         *********/
27049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*********    IS DUE TO CHANGE UNTIL STRICTLY NOTIFIED BY THE    *********/
28049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*********            FREETYPE DEVELOPMENT TEAM                  *********/
29049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*********                                                       *********/
30049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
31049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
32049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
33049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
34049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
35049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
36049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
370a9d06e2b5cf75c3d6ba958026bfdf4745f576d6The Android Open Source Project  /* Main reason for not lifting the functions in this module to a  */
380a9d06e2b5cf75c3d6ba958026bfdf4745f576d6The Android Open Source Project  /* `standard' API is that the used parameters for emboldening and */
390a9d06e2b5cf75c3d6ba958026bfdf4745f576d6The Android Open Source Project  /* slanting are not configurable.  Consider the functions as a    */
40ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease  /* code resource that should be copied into the application and   */
410a9d06e2b5cf75c3d6ba958026bfdf4745f576d6The Android Open Source Project  /* adapted to the particular needs.                               */
420a9d06e2b5cf75c3d6ba958026bfdf4745f576d6The Android Open Source Project
430a9d06e2b5cf75c3d6ba958026bfdf4745f576d6The Android Open Source Project
44049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#ifndef __FTSYNTH_H__
45049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#define __FTSYNTH_H__
46049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
47049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
48049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#include <ft2build.h>
49049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#include FT_FREETYPE_H
50049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
51049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#ifdef FREETYPE_H
52049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#error "freetype.h of FreeType 1 has been loaded!"
53049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#error "Please fix the directory search order for header files"
54049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#error "so that freetype.h of FreeType 2 is found first."
55049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#endif
56049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
57049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
58049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source ProjectFT_BEGIN_HEADER
59049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
600a9d06e2b5cf75c3d6ba958026bfdf4745f576d6The Android Open Source Project  /* Embolden a glyph by a `reasonable' value (which is highly a matter of */
610a9d06e2b5cf75c3d6ba958026bfdf4745f576d6The Android Open Source Project  /* taste).  This function is actually a convenience function, providing  */
620a9d06e2b5cf75c3d6ba958026bfdf4745f576d6The Android Open Source Project  /* a wrapper for @FT_Outline_Embolden and @FT_Bitmap_Embolden.           */
630a9d06e2b5cf75c3d6ba958026bfdf4745f576d6The Android Open Source Project  /*                                                                       */
64727dee178a392d20eb050d0c446f2fcc29058fa1Victoria Lease  /* For emboldened outlines the height, width, and advance metrics are    */
65727dee178a392d20eb050d0c446f2fcc29058fa1Victoria Lease  /* increased by the strength of the emboldening.  You can also call      */
66727dee178a392d20eb050d0c446f2fcc29058fa1Victoria Lease  /* @FT_Outline_Get_CBox to get precise values.                           */
67049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  FT_EXPORT( void )
68049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  FT_GlyphSlot_Embolden( FT_GlyphSlot  slot );
69049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
700a9d06e2b5cf75c3d6ba958026bfdf4745f576d6The Android Open Source Project  /* Slant an outline glyph to the right by about 12 degrees. */
71049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  FT_EXPORT( void )
72049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  FT_GlyphSlot_Oblique( FT_GlyphSlot  slot );
73049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
740a9d06e2b5cf75c3d6ba958026bfdf4745f576d6The Android Open Source Project  /* */
75049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
76049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source ProjectFT_END_HEADER
77049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
78049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#endif /* __FTSYNTH_H__ */
79049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
80049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
81049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/* END */
82