0,0 → 1,83 |
/***************************************************************************/ |
/* */ |
/* svcid.h */ |
/* */ |
/* The FreeType CID font services (specification). */ |
/* */ |
/* Copyright 2007, 2009 by Derek Clegg, Michael Toftdal. */ |
/* */ |
/* 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. */ |
/* */ |
/***************************************************************************/ |
|
|
#ifndef __SVCID_H__ |
#define __SVCID_H__ |
|
#include FT_INTERNAL_SERVICE_H |
|
|
FT_BEGIN_HEADER |
|
|
#define FT_SERVICE_ID_CID "CID" |
|
typedef FT_Error |
(*FT_CID_GetRegistryOrderingSupplementFunc)( FT_Face face, |
const char* *registry, |
const char* *ordering, |
FT_Int *supplement ); |
typedef FT_Error |
(*FT_CID_GetIsInternallyCIDKeyedFunc)( FT_Face face, |
FT_Bool *is_cid ); |
typedef FT_Error |
(*FT_CID_GetCIDFromGlyphIndexFunc)( FT_Face face, |
FT_UInt glyph_index, |
FT_UInt *cid ); |
|
FT_DEFINE_SERVICE( CID ) |
{ |
FT_CID_GetRegistryOrderingSupplementFunc get_ros; |
FT_CID_GetIsInternallyCIDKeyedFunc get_is_cid; |
FT_CID_GetCIDFromGlyphIndexFunc get_cid_from_glyph_index; |
}; |
|
#ifndef FT_CONFIG_OPTION_PIC |
|
#define FT_DEFINE_SERVICE_CIDREC(class_, get_ros_, \ |
get_is_cid_, get_cid_from_glyph_index_ ) \ |
static const FT_Service_CIDRec class_ = \ |
{ \ |
get_ros_, get_is_cid_, get_cid_from_glyph_index_ \ |
}; |
|
#else /* FT_CONFIG_OPTION_PIC */ |
|
#define FT_DEFINE_SERVICE_CIDREC(class_, get_ros_, \ |
get_is_cid_, get_cid_from_glyph_index_ ) \ |
void \ |
FT_Init_Class_##class_( FT_Library library, \ |
FT_Service_CIDRec* clazz) \ |
{ \ |
FT_UNUSED(library); \ |
clazz->get_ros = get_ros_; \ |
clazz->get_is_cid = get_is_cid_; \ |
clazz->get_cid_from_glyph_index = get_cid_from_glyph_index_; \ |
} |
|
#endif /* FT_CONFIG_OPTION_PIC */ |
|
/* */ |
|
|
FT_END_HEADER |
|
|
#endif /* __SVCID_H__ */ |
|
|
/* END */ |