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 */
|