SplashT1Font.h 1.28 KB
Newer Older
Kristian Høgsberg's avatar
Kristian Høgsberg committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
//========================================================================
//
// SplashT1Font.h
//
//========================================================================

#ifndef SPLASHT1FONT_H
#define SPLASHT1FONT_H

#if HAVE_T1LIB_H

#ifdef USE_GCC_PRAGMAS
#pragma interface
#endif

#include "SplashFont.h"

18 19
class SplashT1FontFile;

Kristian Høgsberg's avatar
Kristian Høgsberg committed
20 21 22 23 24 25 26
//------------------------------------------------------------------------
// SplashT1Font
//------------------------------------------------------------------------

class SplashT1Font: public SplashFont {
public:

27 28
  SplashT1Font(SplashT1FontFile *fontFileA, SplashCoord *matA,
	       SplashCoord *textMatA);
Kristian Høgsberg's avatar
Kristian Høgsberg committed
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46

  virtual ~SplashT1Font();

  // Munge xFrac and yFrac before calling SplashFont::getGlyph.
  virtual GBool getGlyph(int c, int xFrac, int yFrac,
			 SplashGlyphBitmap *bitmap);

  // Rasterize a glyph.  The <xFrac> and <yFrac> values are the same
  // as described for getGlyph.
  virtual GBool makeGlyph(int c, int xFrac, int yFrac,
			  SplashGlyphBitmap *bitmap);

  // Return the path for a glyph.
  virtual SplashPath *getGlyphPath(int c);

private:

  int t1libID;			// t1lib font ID
47
  int outlineID;		// t1lib font ID for glyph outlines
Kristian Høgsberg's avatar
Kristian Høgsberg committed
48
  float size;
49 50
  float outlineSize;		// size for glyph outlines
  float outlineMul;
Kristian Høgsberg's avatar
Kristian Høgsberg committed
51 52 53 54 55
};

#endif // HAVE_T1LIB_H

#endif