1/****************************************************************************
2 *
3 * afdummy.c
4 *
5 * Auto-fitter dummy routines to be used if no hinting should be
6 * performed (body).
7 *
8 * Copyright (C) 2003-2023 by
9 * David Turner, Robert Wilhelm, and Werner Lemberg.
10 *
11 * This file is part of the FreeType project, and may only be used,
12 * modified, and distributed under the terms of the FreeType project
13 * license, LICENSE.TXT. By continuing to use, modify, or distribute
14 * this file you indicate that you have read the license and
15 * understand and accept it fully.
16 *
17 */
18
19
20#include "afdummy.h"
21#include "afhints.h"
22#include "aferrors.h"
23
24
25 static FT_Error
26 af_dummy_hints_init( AF_GlyphHints hints,
27 AF_StyleMetrics metrics )
28 {
29 af_glyph_hints_rescale( hints, metrics );
30
31 hints->x_scale = metrics->scaler.x_scale;
32 hints->y_scale = metrics->scaler.y_scale;
33 hints->x_delta = metrics->scaler.x_delta;
34 hints->y_delta = metrics->scaler.y_delta;
35
36 return FT_Err_Ok;
37 }
38
39
40 static FT_Error
41 af_dummy_hints_apply( FT_UInt glyph_index,
42 AF_GlyphHints hints,
43 FT_Outline* outline,
44 AF_StyleMetrics metrics )
45 {
46 FT_Error error;
47
48 FT_UNUSED( glyph_index );
49 FT_UNUSED( metrics );
50
51
52 error = af_glyph_hints_reload( hints, outline );
53 if ( !error )
54 af_glyph_hints_save( hints, outline );
55
56 return error;
57 }
58
59
60 AF_DEFINE_WRITING_SYSTEM_CLASS(
61 af_dummy_writing_system_class,
62
63 AF_WRITING_SYSTEM_DUMMY,
64
65 sizeof ( AF_StyleMetricsRec ),
66
67 (AF_WritingSystem_InitMetricsFunc) NULL, /* style_metrics_init */
68 (AF_WritingSystem_ScaleMetricsFunc)NULL, /* style_metrics_scale */
69 (AF_WritingSystem_DoneMetricsFunc) NULL, /* style_metrics_done */
70 (AF_WritingSystem_GetStdWidthsFunc)NULL, /* style_metrics_getstdw */
71
72 (AF_WritingSystem_InitHintsFunc) af_dummy_hints_init, /* style_hints_init */
73 (AF_WritingSystem_ApplyHintsFunc) af_dummy_hints_apply /* style_hints_apply */
74 )
75
76
77/* END */
78