File: utilPostscriptFace.h

package info (click to toggle)
ted 2.16-5
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 13,944 kB
  • ctags: 20,273
  • sloc: ansic: 167,980; makefile: 12,518; sh: 263
file content (78 lines) | stat: -rw-r--r-- 2,309 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
/************************************************************************/
/*									*/
/*  Define a mapping between fonts and their faces as they appear in an	*/
/*  office document and the family/encoding/face combinations as they	*/
/*  are used in printing, and indirectly in showing a document on	*/
/*  screen.								*/
/*									*/
/*  1)  Indirection to the family in the administration of PostScript	*/
/*	fonts.								*/
/*  2)  Indirection to the face in the family.				*/
/*  3)  Shortcut to the metrics of the face.				*/
/*  4)  Attributes of the face.						*/
/*  5)  Encoding for which this entry is used.				*/
/*									*/
/************************************************************************/

#   ifndef	UTIL_POSTSCRIPT_FACE_H
#   define	UTIL_POSTSCRIPT_FACE_H

#   include	<utilDocFont.h>
#   include	<psFont.h>

#   define	FACElenID	24

typedef struct FaceReference
    {
		/*  KEY  */
    int		frDocFontIndex;
    int		frDocFaceIndex;
    char	frFaceId[FACElenID+1];

		/*  DEP  */
    int		frEncoding;
    int		frAppearsInText;
    } FaceReference;

typedef struct PostScriptFace
    {
    const AfmFontInfo *	psfAfi;				/*  3		*/
    unsigned char	psfEncodingUsed[ENCODINGps_COUNT];

    FaceReference *	psfReferences;
    int			psfReferenceCount;
    int			psfAppearsInText;
    int			psfEmbed;
#			define	PSembedNO	-1
#			define	PSembedUNKNOWN	0
#			define	PSembedCOPY	1
#			define	PSembedBTOA	2
#			define	PSembedTTFTO42	3
    char *		psfFontFileName;
    int			psfFontFileNameLength;
    } PostScriptFace;

typedef struct PostScriptTypeList
    {
    void *		pstlFaceTree;
    int			pstlEncodingUsed[ENCODINGps_COUNT];
    const char *	pstlFontDirectory;
    } PostScriptTypeList;

/************************************************************************/
/*									*/
/*  Declarations.							*/
/*									*/
/************************************************************************/

extern int utilRememberPostsciptFace(	PostScriptTypeList *	pstl,
					int			encoding,
					const AfmFontInfo *	afi,
					const TextAttribute *	ta,
					const char *		prefix,
					int			appearsInText );

extern void utilInitPostScriptFaceList( PostScriptTypeList *	pstl );
extern void utilCleanPostScriptFaceList( PostScriptTypeList *	pstl );

#   endif	/*  UTIL_POSTSCRIPT_FACE_H	*/