31 #include "CEGUIBase.h"
32 #include "CEGUIPropertySet.h"
33 #include "CEGUIString.h"
34 #include "CEGUIXMLSerializer.h"
35 #include "CEGUIFontGlyph.h"
40 # pragma warning(push)
41 # pragma warning(disable : 4251)
68 const String& getName()
const;
71 const String& getTypeName()
const;
84 bool isCodepointAvailable(utf32 cp)
const
85 {
return (d_cp_map.find(cp) != d_cp_map.end()); }
126 const ColourRect& colours,
const float space_extra = 0.0f,
127 const float x_scale = 1.0f,
const float y_scale = 1.0f);
136 void setNativeResolution(
const Size& size);
146 Size getNativeResolution()
const;
156 void setAutoScaled(
const bool auto_scaled);
166 bool isAutoScaled()
const;
175 virtual void notifyDisplaySizeChanged(
const Size& size);
189 float getLineSpacing(
float y_scale = 1.0f)
const
190 {
return d_height * y_scale; }
204 float getFontHeight(
float y_scale = 1.0f)
const
205 {
return (d_ascender - d_descender) * y_scale; }
219 float getBaseline(
float y_scale = 1.0f)
const
220 {
return d_ascender * y_scale; }
239 float getTextExtent(
const String& text,
float x_scale = 1.0f)
const;
264 size_t getCharAtPixel(
const String& text,
float pixel,
265 float x_scale = 1.0f)
const
296 size_t getCharAtPixel(
const String& text,
size_t start_char,
float pixel,
297 float x_scale = 1.0f)
const;
309 static void setDefaultResourceGroup(
const String& resourceGroup)
310 { d_defaultResourceGroup = resourceGroup; }
320 static const String& getDefaultResourceGroup()
321 {
return d_defaultResourceGroup; }
347 const FontGlyph* getGlyphData(utf32 codepoint)
const;
352 const String& resource_group,
const bool auto_scaled,
353 const float native_horz_res,
const float native_vert_res);
369 virtual void rasterise(utf32 start_codepoint, utf32 end_codepoint)
const;
372 virtual void updateFont() = 0;
375 virtual void writeXMLToStream_impl(
XMLSerializer& xml_stream)
const = 0;
378 void addFontProperties();
385 void setMaxCodepoint(utf32 codepoint);
442 #if defined(_MSC_VER)
443 # pragma warning(pop)
447 #endif // end of guard _CEGUIFont_h_