i hope the node casts are correct here.
[AROS-Contrib.git] / arospdf / fofi / FoFiType1.h
blob9c885844ca7a46d5a091975be2d246041eb30fd1
1 //========================================================================
2 //
3 // FoFiType1.h
4 //
5 // Copyright 1999-2003 Glyph & Cog, LLC
6 //
7 //========================================================================
9 #ifndef FOFITYPE1_H
10 #define FOFITYPE1_H
12 #include <aconf.h>
14 #ifdef USE_GCC_PRAGMAS
15 #pragma interface
16 #endif
18 #include "gtypes.h"
19 #include "FoFiBase.h"
21 //------------------------------------------------------------------------
22 // FoFiType1
23 //------------------------------------------------------------------------
25 class FoFiType1: public FoFiBase {
26 public:
28 // Create a FoFiType1 object from a memory buffer.
29 static FoFiType1 *make(char *fileA, int lenA);
31 // Create a FoFiType1 object from a file on disk.
32 static FoFiType1 *load(char *fileName);
34 virtual ~FoFiType1();
36 // Return the font name.
37 char *getName();
39 // Return the encoding, as an array of 256 names (any of which may
40 // be NULL).
41 char **getEncoding();
43 // Write a version of the Type 1 font file with a new encoding.
44 void writeEncoded(char **newEncoding,
45 FoFiOutputFunc outputFunc, void *outputStream);
47 private:
49 FoFiType1(char *fileA, int lenA, GBool freeFileDataA);
51 char *getNextLine(char *line);
52 void parse();
54 char *name;
55 const char **encoding;
56 GBool parsed;
59 #endif