blob: ccf8ada1c3c98e2e209ec23cce78503724e9923c [file] [log] [blame]
David Turner19ed8af2000-12-08 02:42:29 +00001/***************************************************************************/
2/* */
3/* cffload.h */
4/* */
5/* OpenType & CFF data/program tables loader (specification). */
6/* */
Werner Lembergd393ca32003-09-30 07:00:42 +00007/* Copyright 1996-2001, 2002, 2003 by */
David Turner19ed8af2000-12-08 02:42:29 +00008/* David Turner, Robert Wilhelm, and Werner Lemberg. */
9/* */
10/* This file is part of the FreeType project, and may only be used, */
11/* modified, and distributed under the terms of the FreeType project */
12/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
13/* this file you indicate that you have read the license and */
14/* understand and accept it fully. */
15/* */
16/***************************************************************************/
17
18
Werner Lemberg90d99642000-12-09 00:45:38 +000019#ifndef __CFFLOAD_H__
20#define __CFFLOAD_H__
David Turner19ed8af2000-12-08 02:42:29 +000021
Werner Lembergcc069be2000-12-08 16:17:16 +000022
David Turner19ed8af2000-12-08 02:42:29 +000023#include <ft2build.h>
David Turner77605952003-10-29 21:43:52 +000024#include "cfftypes.h"
25#include FT_SERVICE_POSTSCRIPT_CMAPS_H
David Turner19ed8af2000-12-08 02:42:29 +000026
Werner Lembergcc069be2000-12-08 16:17:16 +000027
David Turner19ed8af2000-12-08 02:42:29 +000028FT_BEGIN_HEADER
29
David Turnerbc82f1b2002-03-01 02:26:22 +000030 FT_LOCAL( FT_UShort )
David Turnerb9b2cac2002-07-10 16:52:06 +000031 cff_get_standard_encoding( FT_UInt charcode );
Tom Kacvinsky236f82d2001-08-08 10:45:08 +000032
Werner Lemberg1429db62001-04-02 23:54:01 +000033
David Turnerbc82f1b2002-03-01 02:26:22 +000034 FT_LOCAL( FT_String* )
David Turnerb9b2cac2002-07-10 16:52:06 +000035 cff_index_get_name( CFF_Index idx,
36 FT_UInt element );
Werner Lembergcc069be2000-12-08 16:17:16 +000037
David Turnerbc82f1b2002-03-01 02:26:22 +000038 FT_LOCAL( FT_String* )
David Turnerb72d8a82003-09-29 20:33:37 +000039 cff_index_get_sid_string( CFF_Index idx,
40 FT_UInt sid,
David Turner77605952003-10-29 21:43:52 +000041 FT_Service_PsCMaps psnames );
David Turner19ed8af2000-12-08 02:42:29 +000042
43
David Turnerbc82f1b2002-03-01 02:26:22 +000044 FT_LOCAL( FT_Error )
David Turnerb9b2cac2002-07-10 16:52:06 +000045 cff_index_access_element( CFF_Index idx,
46 FT_UInt element,
47 FT_Byte** pbytes,
48 FT_ULong* pbyte_len );
Werner Lembergcc069be2000-12-08 16:17:16 +000049
David Turnerbc82f1b2002-03-01 02:26:22 +000050 FT_LOCAL( void )
David Turnerb9b2cac2002-07-10 16:52:06 +000051 cff_index_forget_element( CFF_Index idx,
52 FT_Byte** pbytes );
David Turner19ed8af2000-12-08 02:42:29 +000053
54
David Turnerbc82f1b2002-03-01 02:26:22 +000055 FT_LOCAL( FT_Error )
David Turnerb9b2cac2002-07-10 16:52:06 +000056 cff_font_load( FT_Stream stream,
Werner Lemberg93616ec2001-06-27 19:46:12 +000057 FT_Int face_index,
Graham Asher9eefed12002-08-23 10:08:38 +000058 CFF_Font font );
Werner Lembergcc069be2000-12-08 16:17:16 +000059
David Turnerbc82f1b2002-03-01 02:26:22 +000060 FT_LOCAL( void )
David Turnerb9b2cac2002-07-10 16:52:06 +000061 cff_font_done( CFF_Font font );
David Turner19ed8af2000-12-08 02:42:29 +000062
63
David Turnerbc82f1b2002-03-01 02:26:22 +000064 FT_LOCAL( FT_Byte )
Werner Lemberg80cfbd72003-12-26 07:26:08 +000065 cff_fd_select_get( CFF_FDSelect fdselect,
David Turnerb9b2cac2002-07-10 16:52:06 +000066 FT_UInt glyph_index );
David Turner19ed8af2000-12-08 02:42:29 +000067
68
David Turner19ed8af2000-12-08 02:42:29 +000069FT_END_HEADER
70
Werner Lemberg90d99642000-12-09 00:45:38 +000071#endif /* __CFFLOAD_H__ */
David Turner19ed8af2000-12-08 02:42:29 +000072
73
74/* END */