62 class ZENI_GRAPHICS_DLL Video;
63 class ZENI_GRAPHICS_DLL Video_GL_Fixed;
64 class ZENI_GRAPHICS_DLL Video_GL_Shader;
65 class ZENI_GRAPHICS_DLL Video_DX9;
66 class ZENI_GRAPHICS_DLL Texture;
70 class ZENI_GRAPHICS_DLL
Font {
72 Font & operator=(
const Font &);
76 Font(
const float &glyph_height,
77 const float &virtual_screen_height,
78 const String &font_name =
"Untitled Font");
81 inline const String & get_name()
const;
82 inline float get_text_height()
const;
83 virtual float get_text_width(
const String &text)
const = 0;
84 inline float get_virtual_screen_height()
const;
87 virtual void render_text(
const String &text,
const Point2f &position,
95 float m_virtual_screen_height;
101 Font_FT & operator=(
const Font_FT &);
103 struct ZENI_GRAPHICS_DLL Glyph {
113 inline float get_glyph_width()
const;
115 inline void render(Video &vr,
const Point2f &position,
const float &vratio)
const;
120 Point2f m_upper_left_point, m_lower_right_point;
121 Point2f m_upper_left_texel, m_lower_right_texel;
126 Font_FT(
const String &filepath,
127 const float &glyph_height,
128 const float &virtual_screen_height);
130 virtual float get_text_width(
const String &text)
const;
132 virtual void render_text(
const String &text,
const Point2f &position,
140 int next_power_of_two(
const int &
value);
141 Image gen_glyph(FT_Face &
face,
const char &ch);
144 #pragma warning( push )
145 #pragma warning( disable : 4251 )
147 std::vector<Glyph> m_glyph;
148 std::auto_ptr<Texture> m_texture;
150 #pragma warning( pop )
#define ZENI_DEFAULT_JUSTIFY
static void init(struct bs2b *bs2b)
static void render(const Vertex_Buffer_Macrorenderer ¯orenderer, std::vector< Vertex_Buffer::Vertex_Buffer_Range * > &descriptors)
A 3D Point represented with floats.
A Featureful 3-Space Vector Class.
Font_Type_Unsupported(const String &filename)
struct FT_FaceRec_ * FT_Face
EGLSurface EGLint void ** value
A 2D Point represented with floats.
A 2D Point represented with integers.