/***************************************************************************/ | |
/* */ | |
/* afdummy.c */ | |
/* */ | |
/* Auto-fitter dummy routines to be used if no hinting should be */ | |
/* performed (body). */ | |
/* */ | |
/* Copyright 2003-2015 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. */ | |
/* */ | |
/***************************************************************************/ | |
#include "afdummy.h" | |
#include "afhints.h" | |
#include "aferrors.h" | |
static FT_Error | |
af_dummy_hints_init( AF_GlyphHints hints, | |
AF_StyleMetrics metrics ) | |
{ | |
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; | |
} | |
static FT_Error | |
af_dummy_hints_apply( FT_UInt glyph_index, | |
AF_GlyphHints hints, | |
FT_Outline* outline ) | |
{ | |
FT_Error error; | |
FT_UNUSED( glyph_index ); | |
error = af_glyph_hints_reload( hints, outline ); | |
if ( !error ) | |
af_glyph_hints_save( hints, outline ); | |
return error; | |
} | |
AF_DEFINE_WRITING_SYSTEM_CLASS( | |
af_dummy_writing_system_class, | |
AF_WRITING_SYSTEM_DUMMY, | |
sizeof ( AF_StyleMetricsRec ), | |
(AF_WritingSystem_InitMetricsFunc) NULL, | |
(AF_WritingSystem_ScaleMetricsFunc)NULL, | |
(AF_WritingSystem_DoneMetricsFunc) NULL, | |
(AF_WritingSystem_GetStdWidthsFunc)NULL, | |
(AF_WritingSystem_InitHintsFunc) af_dummy_hints_init, | |
(AF_WritingSystem_ApplyHintsFunc) af_dummy_hints_apply | |
) | |
/* END */ |