afdummy.c 2.5 KB
Newer Older
M
Ming, Bai 已提交
1 2 3 4 5 6 7
/***************************************************************************/
/*                                                                         */
/*  afdummy.c                                                              */
/*                                                                         */
/*    Auto-fitter dummy routines to be used if no hinting should be        */
/*    performed (body).                                                    */
/*                                                                         */
8
/*  Copyright 2003-2015 by                                                 */
M
Ming, Bai 已提交
9 10 11 12 13 14 15 16 17 18 19 20 21
/*  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.                                        */
/*                                                                         */
/***************************************************************************/


#include "afdummy.h"
#include "afhints.h"
G
Grissiom 已提交
22
#include "aferrors.h"
M
Ming, Bai 已提交
23 24 25


  static FT_Error
G
Grissiom 已提交
26 27
  af_dummy_hints_init( AF_GlyphHints    hints,
                       AF_StyleMetrics  metrics )
M
Ming, Bai 已提交
28
  {
G
Grissiom 已提交
29 30 31 32 33 34 35 36
    af_glyph_hints_rescale( hints, metrics );

    hints->x_scale = metrics->scaler.x_scale;
    hints->y_scale = metrics->scaler.y_scale;
    hints->x_delta = metrics->scaler.x_delta;
    hints->y_delta = metrics->scaler.y_delta;

    return FT_Err_Ok;
M
Ming, Bai 已提交
37 38 39 40
  }


  static FT_Error
41 42
  af_dummy_hints_apply( FT_UInt        glyph_index,
                        AF_GlyphHints  hints,
M
Ming, Bai 已提交
43 44
                        FT_Outline*    outline )
  {
G
Grissiom 已提交
45 46
    FT_Error  error;

47 48
    FT_UNUSED( glyph_index );

M
Ming, Bai 已提交
49

G
Grissiom 已提交
50 51 52 53 54
    error = af_glyph_hints_reload( hints, outline );
    if ( !error )
      af_glyph_hints_save( hints, outline );

    return error;
M
Ming, Bai 已提交
55 56 57
  }


G
Grissiom 已提交
58 59 60 61
  AF_DEFINE_WRITING_SYSTEM_CLASS(
    af_dummy_writing_system_class,

    AF_WRITING_SYSTEM_DUMMY,
M
Ming, Bai 已提交
62

G
Grissiom 已提交
63
    sizeof ( AF_StyleMetricsRec ),
M
Ming, Bai 已提交
64

G
Grissiom 已提交
65 66 67
    (AF_WritingSystem_InitMetricsFunc) NULL,
    (AF_WritingSystem_ScaleMetricsFunc)NULL,
    (AF_WritingSystem_DoneMetricsFunc) NULL,
68
    (AF_WritingSystem_GetStdWidthsFunc)NULL,
M
Ming, Bai 已提交
69

G
Grissiom 已提交
70 71
    (AF_WritingSystem_InitHintsFunc)   af_dummy_hints_init,
    (AF_WritingSystem_ApplyHintsFunc)  af_dummy_hints_apply
M
Ming, Bai 已提交
72 73 74 75
  )


/* END */