]> www.fi.muni.cz Git - evince.git/blob - pdf/splash/SplashFTFontEngine.h
0497a46e572eb71faea8f3d1720ae7a05823a638
[evince.git] / pdf / splash / SplashFTFontEngine.h
1 //========================================================================
2 //
3 // SplashFTFontEngine.h
4 //
5 //========================================================================
6
7 #ifndef SPLASHFTFONTENGINE_H
8 #define SPLASHFTFONTENGINE_H
9
10 #include <aconf.h>
11
12 #if HAVE_FREETYPE_FREETYPE_H || HAVE_FREETYPE_H
13
14 #ifdef USE_GCC_PRAGMAS
15 #pragma interface
16 #endif
17
18 #include <freetype/freetype.h>
19 #include "gtypes.h"
20
21 class SplashFontFile;
22 class SplashFontFileID;
23
24 //------------------------------------------------------------------------
25 // SplashFTFontEngine
26 //------------------------------------------------------------------------
27
28 class SplashFTFontEngine {
29 public:
30
31   static SplashFTFontEngine *init(GBool aaA);
32
33   ~SplashFTFontEngine();
34
35   // Load fonts.
36   SplashFontFile *loadType1Font(SplashFontFileID *idA, char *fileName,
37                                 GBool deleteFile, char **enc);
38   SplashFontFile *loadType1CFont(SplashFontFileID *idA, char *fileName,
39                                  GBool deleteFile, char **enc);
40   SplashFontFile *loadCIDFont(SplashFontFileID *idA, char *fileName,
41                               GBool deleteFile);
42   SplashFontFile *loadTrueTypeFont(SplashFontFileID *idA, char *fileName,
43                                    GBool deleteFile,
44                                    Gushort *codeToGID, int codeToGIDLen);
45
46 private:
47
48   SplashFTFontEngine(GBool aaA, FT_Library libA);
49
50   GBool aa;
51   FT_Library lib;
52
53   friend class SplashFTFontFile;
54   friend class SplashFTFont;
55 };
56
57 #endif // HAVE_FREETYPE_FREETYPE_H || HAVE_FREETYPE_H
58
59 #endif