亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? aftypes.h

?? 智能設備中PDF閱讀器的源碼!用于windows mobile2003或者WM5以上
?? H
字號:
/***************************************************************************/
/*                                                                         */
/*  aftypes.h                                                              */
/*                                                                         */
/*    Auto-fitter types (specification only).                              */
/*                                                                         */
/*  Copyright 2003, 2004, 2005, 2006 by                                    */
/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
/*                                                                         */
/*  This file is part of the FreeType project, and may only be used,       */
/*  modified, and distributed under the terms of the FreeType project      */
/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
/*  this file you indicate that you have read the license and              */
/*  understand and accept it fully.                                        */
/*                                                                         */
/***************************************************************************/


  /*************************************************************************
   *
   *  The auto-fitter is a complete rewrite of the old auto-hinter.
   *  Its main feature is the ability to differentiate between different
   *  scripts in order to apply language-specific rules.
   *
   *  The code has also been compartimentized into several entities that
   *  should make algorithmic experimentation easier than with the old
   *  code.
   *
   *  Finally, we get rid of the Catharon license, since this code is
   *  released under the FreeType one.
   *
   *************************************************************************/


#ifndef __AFTYPES_H__
#define __AFTYPES_H__

#include <ft2build.h>

#include FT_FREETYPE_H
#include FT_OUTLINE_H
#include FT_INTERNAL_OBJECTS_H
#include FT_INTERNAL_DEBUG_H


FT_BEGIN_HEADER

  /*************************************************************************/
  /*************************************************************************/
  /*****                                                               *****/
  /*****                    D E B U G G I N G                          *****/
  /*****                                                               *****/
  /*************************************************************************/
  /*************************************************************************/

#define xxAF_USE_WARPER  /* only define to use warp hinting */
#define xxAF_DEBUG

#ifdef AF_DEBUG

#include <stdio.h>

#define AF_LOG( x )  printf x

#else

#define AF_LOG( x )  do ; while ( 0 )        /* nothing */

#endif /* AF_DEBUG */


  /*************************************************************************/
  /*************************************************************************/
  /*****                                                               *****/
  /*****                 U T I L I T Y   S T U F F                     *****/
  /*****                                                               *****/
  /*************************************************************************/
  /*************************************************************************/

  typedef struct  AF_WidthRec_
  {
    FT_Pos  org;  /* original position/width in font units              */
    FT_Pos  cur;  /* current/scaled position/width in device sub-pixels */
    FT_Pos  fit;  /* current/fitted position/width in device sub-pixels */

  } AF_WidthRec, *AF_Width;


  FT_LOCAL( void )
  af_sort_pos( FT_UInt  count,
               FT_Pos*  table );

  FT_LOCAL( void )
  af_sort_widths( FT_UInt   count,
                  AF_Width  widths );


  /*************************************************************************/
  /*************************************************************************/
  /*****                                                               *****/
  /*****                   A N G L E   T Y P E S                       *****/
  /*****                                                               *****/
  /*************************************************************************/
  /*************************************************************************/

  /*
   *  The auto-fitter doesn't need a very high angular accuracy;
   *  this allows us to speed up some computations considerably with a
   *  light Cordic algorithm (see afangles.c).
   */

  typedef FT_Int  AF_Angle;


#define AF_ANGLE_PI   256
#define AF_ANGLE_2PI  ( AF_ANGLE_PI * 2 )
#define AF_ANGLE_PI2  ( AF_ANGLE_PI / 2 )
#define AF_ANGLE_PI4  ( AF_ANGLE_PI / 4 )


  /*
   *  compute the angle of a given 2-D vector
   */
  FT_LOCAL( AF_Angle )
  af_angle_atan( FT_Pos  dx,
                 FT_Pos  dy );


#if 0
  /*
   *  compute `angle2 - angle1'; the result is always within
   *  the range [-AF_ANGLE_PI .. AF_ANGLE_PI - 1]
   */
  FT_LOCAL( AF_Angle )
  af_angle_diff( AF_Angle  angle1,
                 AF_Angle  angle2 );
#endif /* 0 */


#define AF_ANGLE_DIFF( result, angle1, angle2 ) \
  FT_BEGIN_STMNT                                \
    AF_Angle  _delta = (angle2) - (angle1);     \
                                                \
                                                \
    _delta %= AF_ANGLE_2PI;                     \
    if ( _delta < 0 )                           \
      _delta += AF_ANGLE_2PI;                   \
                                                \
    if ( _delta > AF_ANGLE_PI )                 \
      _delta -= AF_ANGLE_2PI;                   \
                                                \
    result = _delta;                            \
  FT_END_STMNT


  /*************************************************************************/
  /*************************************************************************/
  /*****                                                               *****/
  /*****                    O U T L I N E S                            *****/
  /*****                                                               *****/
  /*************************************************************************/
  /*************************************************************************/

  /*  opaque handle to glyph-specific hints -- see `afhints.h' for more
   *  details
   */
  typedef struct AF_GlyphHintsRec_*  AF_GlyphHints;

  /*  This structure is used to model an input glyph outline to
   *  the auto-hinter.  The latter will set the `hints' field
   *  depending on the glyph's script.
   */
  typedef struct  AF_OutlineRec_
  {
    FT_Face        face;
    FT_Outline     outline;
    FT_UInt        outline_resolution;

    FT_Int         advance;
    FT_UInt        metrics_resolution;

    AF_GlyphHints  hints;

  } AF_OutlineRec;


  /*************************************************************************/
  /*************************************************************************/
  /*****                                                               *****/
  /*****                       S C A L E R S                           *****/
  /*****                                                               *****/
  /*************************************************************************/
  /*************************************************************************/

  /*
   *  A scaler models the target pixel device that will receive the
   *  auto-hinted glyph image.
   */

  typedef enum
  {
    AF_SCALER_FLAG_NO_HORIZONTAL = 1,  /* disable horizontal hinting */
    AF_SCALER_FLAG_NO_VERTICAL   = 2,  /* disable vertical hinting   */
    AF_SCALER_FLAG_NO_ADVANCE    = 4   /* disable advance hinting    */

  } AF_ScalerFlags;


  typedef struct  AF_ScalerRec_
  {
    FT_Face         face;        /* source font face                        */
    FT_Fixed        x_scale;     /* from font units to 1/64th device pixels */
    FT_Fixed        y_scale;     /* from font units to 1/64th device pixels */
    FT_Pos          x_delta;     /* in 1/64th device pixels                 */
    FT_Pos          y_delta;     /* in 1/64th device pixels                 */
    FT_Render_Mode  render_mode; /* monochrome, anti-aliased, LCD, etc.     */
    FT_UInt32       flags;       /* additional control flags, see above     */

  } AF_ScalerRec, *AF_Scaler;


#define AF_SCALER_EQUAL_SCALES( a, b )      \
          ( (a)->x_scale == (b)->x_scale && \
            (a)->y_scale == (b)->y_scale && \
            (a)->x_delta == (b)->x_delta && \
            (a)->y_delta == (b)->y_delta )


  /*************************************************************************/
  /*************************************************************************/
  /*****                                                               *****/
  /*****                       S C R I P T S                           *****/
  /*****                                                               *****/
  /*************************************************************************/
  /*************************************************************************/

  /*
   *  The list of know scripts.  Each different script corresponds to the
   *  following information:
   *
   *   - A set of Unicode ranges to test whether the face supports the
   *     script.
   *
   *   - A specific global analyzer that will compute global metrics
   *     specific to the script.
   *
   *   - A specific glyph analyzer that will compute segments and
   *     edges for each glyph covered by the script.
   *
   *   - A specific grid-fitting algorithm that will distort the
   *     scaled glyph outline according to the results of the glyph
   *     analyzer.
   *
   *  Note that a given analyzer and/or grid-fitting algorithm can be
   *  used by more than one script.
   */

  typedef enum
  {
    AF_SCRIPT_NONE  = 0,
    AF_SCRIPT_LATIN = 1,
    AF_SCRIPT_CJK   = 2,
    /* add new scripts here.  Don't forget to update the list in */
    /* `afglobal.c'.                                             */

    AF_SCRIPT_MAX   /* do not remove */

  } AF_Script;


  typedef struct AF_ScriptClassRec_ const*  AF_ScriptClass;

  typedef struct  AF_ScriptMetricsRec_
  {
    AF_ScriptClass  clazz;
    AF_ScalerRec    scaler;

  } AF_ScriptMetricsRec, *AF_ScriptMetrics;


  /*  This function parses an FT_Face to compute global metrics for
   *  a specific script.
   */
  typedef FT_Error
  (*AF_Script_InitMetricsFunc)( AF_ScriptMetrics  metrics,
                                FT_Face           face );

  typedef void
  (*AF_Script_ScaleMetricsFunc)( AF_ScriptMetrics  metrics,
                                 AF_Scaler         scaler );

  typedef void
  (*AF_Script_DoneMetricsFunc)( AF_ScriptMetrics  metrics );


  typedef FT_Error
  (*AF_Script_InitHintsFunc)( AF_GlyphHints     hints,
                              AF_ScriptMetrics  metrics );

  typedef void
  (*AF_Script_ApplyHintsFunc)( AF_GlyphHints     hints,
                               FT_Outline*       outline,
                               AF_ScriptMetrics  metrics );


  typedef struct  AF_Script_UniRangeRec_
  {
    FT_UInt32  first;
    FT_UInt32  last;

  } AF_Script_UniRangeRec;

  typedef const AF_Script_UniRangeRec  *AF_Script_UniRange;


  typedef struct  AF_ScriptClassRec_
  {
    AF_Script                   script;
    AF_Script_UniRange          script_uni_ranges; /* last must be { 0, 0 } */

    FT_UInt                     script_metrics_size;
    AF_Script_InitMetricsFunc   script_metrics_init;
    AF_Script_ScaleMetricsFunc  script_metrics_scale;
    AF_Script_DoneMetricsFunc   script_metrics_done;

    AF_Script_InitHintsFunc     script_hints_init;
    AF_Script_ApplyHintsFunc    script_hints_apply;

  } AF_ScriptClassRec;


/* */

FT_END_HEADER

#endif /* __AFTYPES_H__ */


/* END */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人av网站大全| 国产亚洲综合在线| 久久亚洲综合色| 亚洲国产美女搞黄色| 国产精品一区二区久激情瑜伽 | 欧美极品xxx| 日韩精品国产欧美| 成人h动漫精品| 亚洲精品一区二区三区影院| 亚洲图片欧美色图| av电影天堂一区二区在线观看| 日韩三级免费观看| 一区二区三区成人| 国产a级毛片一区| 2021国产精品久久精品| 午夜a成v人精品| 欧美在线不卡视频| ㊣最新国产の精品bt伙计久久| 黄页视频在线91| 日韩三级伦理片妻子的秘密按摩| 婷婷六月综合网| 欧美日韩免费视频| 一区二区三区欧美| 99久久精品一区| 国产精品久久久久久久久久免费看 | 在线成人高清不卡| 一区二区三区不卡视频| 色婷婷综合激情| 亚洲精品成人悠悠色影视| 粗大黑人巨茎大战欧美成人| 国产校园另类小说区| 韩国成人福利片在线播放| 日韩美女一区二区三区四区| 五月天一区二区三区| 欧美日韩电影一区| 日韩av中文字幕一区二区| 在线不卡中文字幕| 奇米一区二区三区| 日韩精品中文字幕一区二区三区 | 久久精品网站免费观看| 精品无人区卡一卡二卡三乱码免费卡| 日韩欧美国产精品| 激情丁香综合五月| 欧美高清在线视频| 色偷偷一区二区三区| 亚洲综合男人的天堂| 欧美在线观看视频在线| 日韩精品电影在线| 精品国精品自拍自在线| 懂色av一区二区三区免费看| 亚洲欧美在线另类| 欧美日韩中字一区| 久久精品免费观看| 亚洲国产精品成人久久综合一区| 成av人片一区二区| 亚洲综合视频在线| 精品国产麻豆免费人成网站| 国产成人超碰人人澡人人澡| 亚洲精品视频在线| 欧美日韩亚洲综合| 国产永久精品大片wwwapp| 中文字幕免费一区| 欧美精选一区二区| 国产精品亚洲午夜一区二区三区 | 欧美系列日韩一区| 免费三级欧美电影| 国产精品丝袜91| 欧美精品xxxxbbbb| 国产精品911| 亚洲福利一区二区三区| 精品久久人人做人人爽| 一本久久精品一区二区| 免费观看在线综合| 亚洲柠檬福利资源导航| 欧美成人性福生活免费看| 91视频91自| 国产成人在线视频网站| 一区二区日韩av| 中文字幕免费不卡在线| 欧美日韩精品一二三区| 国产99久久久久久免费看农村| 中文字幕一区三区| 日韩美女一区二区三区四区| 在线观看日韩高清av| 国产精品18久久久久久久久久久久 | 在线观看区一区二| 国产精品91一区二区| 午夜成人免费视频| 亚洲女人的天堂| 国产精品无码永久免费888| 欧美日韩国产系列| 91老师片黄在线观看| 国产成人av电影在线| 精品亚洲国内自在自线福利| 亚洲成人一区二区在线观看| 中文av一区二区| 国产亚洲一本大道中文在线| 欧美日韩国产一级片| 在线一区二区三区四区| av激情成人网| a亚洲天堂av| 成人在线视频一区二区| 麻豆精品一区二区三区| 亚洲一区二区三区在线| 亚洲柠檬福利资源导航| 亚洲天天做日日做天天谢日日欢| 国产清纯在线一区二区www| 久久综合久久久久88| 精品国产污污免费网站入口| 精品捆绑美女sm三区| 欧美videos大乳护士334| 欧美一级二级在线观看| 337p亚洲精品色噜噜狠狠| 在线观看国产日韩| 91久久精品午夜一区二区| 成人av在线影院| 成人一区在线看| 成人成人成人在线视频| 99久久综合精品| 91看片淫黄大片一级在线观看| 成人av免费网站| 99久久婷婷国产| 色天天综合久久久久综合片| 在线视频你懂得一区二区三区| 欧美在线观看视频一区二区| 欧美日韩不卡一区| 欧美精品色综合| 这里只有精品99re| 欧美大片一区二区| 久久嫩草精品久久久精品| 久久一留热品黄| 国产精品久久久久一区| 亚洲精品视频在线| 午夜a成v人精品| 国产酒店精品激情| caoporen国产精品视频| 欧美日韩精品一区二区在线播放| 欧美一级免费大片| 26uuu亚洲| 1024亚洲合集| 日本亚洲电影天堂| 国产成人免费av在线| 91麻豆国产香蕉久久精品| 欧美三级视频在线| 亚洲精品一区二区三区在线观看| 国产精品国产精品国产专区不蜜 | 欧美一级理论片| 中文字幕高清不卡| 亚洲激情五月婷婷| 久久av老司机精品网站导航| 国产91综合一区在线观看| 色8久久人人97超碰香蕉987| 日韩欧美中文一区二区| 国产精品国产三级国产| 丝袜美腿一区二区三区| 国产精品18久久久久久vr| 欧美日韩在线播放三区| 国产亚洲欧美激情| 亚洲国产欧美在线人成| 国产麻豆精品在线| 欧美性受xxxx黑人xyx性爽| 久久久久久久久久看片| 亚洲.国产.中文慕字在线| 成人国产精品视频| 日韩三级电影网址| 亚洲伊人伊色伊影伊综合网| 国产成人免费视频精品含羞草妖精| 欧美视频自拍偷拍| 中文子幕无线码一区tr| 奇米777欧美一区二区| 91官网在线观看| 国产精品无遮挡| 激情国产一区二区| 884aa四虎影成人精品一区| |精品福利一区二区三区| 国产精品99久久久久久似苏梦涵| 欧美日韩国产不卡| 亚洲欧洲精品一区二区三区不卡| 国内精品国产三级国产a久久| 欧美久久婷婷综合色| 亚洲免费在线观看视频| bt欧美亚洲午夜电影天堂| 国产欧美日韩卡一| 国产高清成人在线| 日韩精品中文字幕在线不卡尤物| 亚洲电影欧美电影有声小说| 色婷婷久久久亚洲一区二区三区| 精品成人a区在线观看| 强制捆绑调教一区二区| 欧美吞精做爰啪啪高潮| 一区二区三区在线观看国产| 99久久国产综合精品女不卡| 久久久久久久免费视频了| 久久99精品国产麻豆不卡| 欧美一区二区视频在线观看| 天堂影院一区二区| 欧美一区二区三区电影| 一区二区三区美女视频| 在线看日本不卡| 洋洋av久久久久久久一区|