blob: 77cc6a6e954f2d458069f5e3bf01b1bc93d84d66 [file] [log] [blame]
Werner Lembergbd5ae402000-07-05 04:32:02 +00001/***************************************************************************/
2/* */
Werner Lembergb5084e12000-10-28 17:10:06 +00003/* t1afm.h */
Werner Lembergbd5ae402000-07-05 04:32:02 +00004/* */
5/* AFM support for Type 1 fonts (specification). */
6/* */
Werner Lembergefa99612002-04-01 22:01:46 +00007/* Copyright 1996-2001, 2002 by */
Werner Lembergbd5ae402000-07-05 04:32:02 +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/***************************************************************************/
David Turner95bec282000-02-15 12:55:57 +000017
18
Werner Lemberg90d99642000-12-09 00:45:38 +000019#ifndef __T1AFM_H__
20#define __T1AFM_H__
David Turner95bec282000-02-15 12:55:57 +000021
David Turner19ed8af2000-12-08 02:42:29 +000022#include <ft2build.h>
David Turner8d3a4012001-03-20 11:14:24 +000023#include "t1objs.h"
David Turnera90663f2000-07-08 00:41:13 +000024
Werner Lembergcc069be2000-12-08 16:17:16 +000025
David Turner19ed8af2000-12-08 02:42:29 +000026FT_BEGIN_HEADER
David Turner95bec282000-02-15 12:55:57 +000027
Werner Lembergcc069be2000-12-08 16:17:16 +000028
Werner Lembergb5084e12000-10-28 17:10:06 +000029 typedef struct T1_Kern_Pair_
Werner Lembergbd5ae402000-07-05 04:32:02 +000030 {
31 FT_UInt glyph1;
32 FT_UInt glyph2;
33 FT_Vector kerning;
David Turner95bec282000-02-15 12:55:57 +000034
Werner Lembergb5084e12000-10-28 17:10:06 +000035 } T1_Kern_Pair;
Werner Lembergbd5ae402000-07-05 04:32:02 +000036
37
Werner Lembergb5084e12000-10-28 17:10:06 +000038 typedef struct T1_AFM_
Werner Lembergbd5ae402000-07-05 04:32:02 +000039 {
40 FT_Int num_pairs;
Werner Lembergb5084e12000-10-28 17:10:06 +000041 T1_Kern_Pair* kern_pairs;
Werner Lembergbd5ae402000-07-05 04:32:02 +000042
Werner Lembergb5084e12000-10-28 17:10:06 +000043 } T1_AFM;
Werner Lembergbd5ae402000-07-05 04:32:02 +000044
45
David Turnerbc82f1b2002-03-01 02:26:22 +000046 FT_LOCAL( FT_Error )
Werner Lemberg4a2305c2001-06-28 07:17:51 +000047 T1_Read_AFM( FT_Face face,
48 FT_Stream stream );
Werner Lembergbd5ae402000-07-05 04:32:02 +000049
David Turnerbc82f1b2002-03-01 02:26:22 +000050 FT_LOCAL( void )
Werner Lemberg4a2305c2001-06-28 07:17:51 +000051 T1_Done_AFM( FT_Memory memory,
52 T1_AFM* afm );
Werner Lembergbd5ae402000-07-05 04:32:02 +000053
David Turnerbc82f1b2002-03-01 02:26:22 +000054 FT_LOCAL( void )
Werner Lemberg4a2305c2001-06-28 07:17:51 +000055 T1_Get_Kerning( T1_AFM* afm,
56 FT_UInt glyph1,
57 FT_UInt glyph2,
58 FT_Vector* kerning );
Werner Lembergbd5ae402000-07-05 04:32:02 +000059
Werner Lembergcc069be2000-12-08 16:17:16 +000060
David Turner19ed8af2000-12-08 02:42:29 +000061FT_END_HEADER
Werner Lembergbd5ae402000-07-05 04:32:02 +000062
Werner Lemberg90d99642000-12-09 00:45:38 +000063#endif /* __T1AFM_H__ */
Werner Lembergbd5ae402000-07-05 04:32:02 +000064
65
66/* END */