windows-nt/Source/XPSP1/NT/shell/osshell/control/t1instal/freader.h
2020-09-26 16:20:57 +08:00

106 lines
2.1 KiB
C

/***
**
** Module: FReader
**
** Description:
** This is a module of the T1 to TT font converter. The module
** contains functions that decodes and decrypts the data of a
** T1 font file.
**
** Author: Michael Jansson
**
** Created: 5/26/93
**
***/
#ifndef _ARGS
# define IN const
# define OUT
# define INOUT
# define _ARGS(arg) arg
#endif
#ifndef FASTCALL
# ifdef MSDOS
# define FASTCALL __fastcall
# else
# define FASTCALL
# endif
#endif
enum ftype {pfb_file, mac_file, ascii_file};
struct FRHandle;
struct FontFile;
/***
** Function: GetByte
**
** Description:
** Pull one byte out of the T1 font file.
***/
short FASTCALL GetByte _ARGS((INOUT struct FontFile *ff));
/***
** Function: Decrypt
**
** Description:
** Decrypt a byte.
***/
UBYTE FASTCALL Decrypt _ARGS((INOUT USHORT *r, IN UBYTE b));
/***
** Function: FRCleanUp
**
** Description:
** Free the resources used when reading/decoding data from
** a T1 font file.
***/
errcode FRCleanUp _ARGS((INOUT struct FontFile *ff));
/***
** Function: FRInit
**
** Description:
** Initite the resources needed to read/decode data from
** a T1 font file.
***/
errcode FRInit _ARGS((IN char *name,
IN enum ftype,
OUT struct FontFile **));
/***
** Function: GetSeq
**
** Description:
** Pull one sequence of bytes that are delimited by
** a given pair of characters, e.g. '[' and ']'.
***/
char *GetSeq _ARGS((INOUT struct FontFile *ff,
OUT char *buf,
IN USHORT len));
/***
** Function: Get_Token
**
** Description:
** Pull one token from the T1 font file. A token
** is delimited by white space and various brackets.
***/
char *Get_Token _ARGS((INOUT struct FontFile *ff,
OUT char *buf,
IN USHORT len));
/***
** Function: GetNewLine
**
** Description:
** Pull one whole line from the T1 font file, starting at
** the current position.
***/
char *GetNewLine _ARGS((INOUT struct FontFile *ff,
OUT char *buf,
IN USHORT len));