Edit

kc3-lang/freetype/src/autofit/afindic.c

Branch :

  • Show log

    Commit

  • Author : Werner Lemberg
    Date : 2011-03-02 03:52:36
    Hash : 576fc2c0
    Message : Add AF_CONFIG_OPTION_USE_WARPER to control the autofit warper. * devel/ftoption.h, include/freetype/config/ftoption.h (AF_CONFIG_OPTION_USE_WARPER): New macro. * src/autofit/aftypes.h (AF_USE_WARPER): Remove. * src/autofit/*: s/AF_USE_WARPER/AF_CONFIG_OPTION_USE_WARPER/. * src/autofit/afwarp.c [!AF_CONFIG_OPTION_USE_WARPER]: Replace dummy variable assignment with a typedef.

  • src/autofit/afindic.c
  • /***************************************************************************/
    /*                                                                         */
    /*  afindic.c                                                              */
    /*                                                                         */
    /*    Auto-fitter hinting routines for Indic scripts (body).               */
    /*                                                                         */
    /*  Copyright 2007, 2011 by                                                */
    /*  Rahul Bhalerao <rahul.bhalerao@redhat.com>, <b.rahul.pm@gmail.com>.    */
    /*                                                                         */
    /*  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.                                        */
    /*                                                                         */
    /***************************************************************************/
    
    
    #include "aftypes.h"
    #include "aflatin.h"
    
    
    #ifdef AF_CONFIG_OPTION_INDIC
    
    #include "afindic.h"
    #include "aferrors.h"
    #include "afcjk.h"
    
    
    #ifdef AF_CONFIG_OPTION_USE_WARPER
    #include "afwarp.h"
    #endif
    
    
      static FT_Error
      af_indic_metrics_init( AF_LatinMetrics  metrics,
                             FT_Face          face )
      {
        /* use CJK routines */
        return af_cjk_metrics_init( metrics, face );
      }
    
    
      static void
      af_indic_metrics_scale( AF_LatinMetrics  metrics,
                              AF_Scaler        scaler )
      {
        /* use CJK routines */
        af_cjk_metrics_scale( metrics, scaler );
      }
    
    
      static FT_Error
      af_indic_hints_init( AF_GlyphHints    hints,
                           AF_LatinMetrics  metrics )
      {
        /* use CJK routines */
        return af_cjk_hints_init( hints, metrics );
      }
    
    
      static FT_Error
      af_indic_hints_apply( AF_GlyphHints    hints,
                            FT_Outline*      outline,
                            AF_LatinMetrics  metrics)
      {
        /* use CJK routines */
        return af_cjk_hints_apply( hints, outline, metrics );
      }
    
    
      /*************************************************************************/
      /*************************************************************************/
      /*****                                                               *****/
      /*****                I N D I C   S C R I P T   C L A S S            *****/
      /*****                                                               *****/
      /*************************************************************************/
      /*************************************************************************/
    
    
      static const AF_Script_UniRangeRec  af_indic_uniranges[] =
      {
    #if 0
        AF_UNIRANGE_REC( 0x0100UL, 0xFFFFUL ),  /* why this? */
    #endif
        AF_UNIRANGE_REC( 0x0900UL, 0x0DFFUL),    /* Indic Range */
        AF_UNIRANGE_REC(      0UL,      0UL)
      };
    
    
      AF_DEFINE_SCRIPT_CLASS(af_indic_script_class,
        AF_SCRIPT_INDIC,
        af_indic_uniranges,
    
        sizeof( AF_LatinMetricsRec ),
    
        (AF_Script_InitMetricsFunc) af_indic_metrics_init,
        (AF_Script_ScaleMetricsFunc)af_indic_metrics_scale,
        (AF_Script_DoneMetricsFunc) NULL,
    
        (AF_Script_InitHintsFunc)   af_indic_hints_init,
        (AF_Script_ApplyHintsFunc)  af_indic_hints_apply
      )
    
    #else /* !AF_CONFIG_OPTION_INDIC */
    
      static const AF_Script_UniRangeRec  af_indic_uniranges[] =
      {
        { 0, 0 }
      };
    
    
      AF_DEFINE_SCRIPT_CLASS(af_indic_script_class,
        AF_SCRIPT_INDIC,
        af_indic_uniranges,
    
        sizeof( AF_LatinMetricsRec ),
    
        (AF_Script_InitMetricsFunc) NULL,
        (AF_Script_ScaleMetricsFunc)NULL,
        (AF_Script_DoneMetricsFunc) NULL,
    
        (AF_Script_InitHintsFunc)   NULL,
        (AF_Script_ApplyHintsFunc)  NULL
      )
    
    #endif /* !AF_CONFIG_OPTION_INDIC */
    
    
    /* END */