AppEasy Core SDK
1.5.0
Cross platform mobile and desktop app and game development SDK - The easy way to make apps
|
00001 // 00002 // 00003 // AppEasy SDK - Cross Platform Multi-purpose Game and App Engine 00004 // 00005 // Developed by Matthew Hopwood of Pocketeers Limited - www.pocketeers.co.uk 00006 // 00007 // For updates, tutorials and more details check out www.appeasymobile.com 00008 // 00009 // This code is provided free of charge and without any warranty whatsoever. You must ensure that this whole notice is present in all files and derivatives, so the reader knows its origin. 00010 // If you use this SDK in your product then please ensure that you credit AppEasy's usage appropriately. Please see www.appeasymobile.com for licensing details and support 00011 // 00012 // 00013 00014 #if !defined(_CCZ_PLATFORM_FONT_H_) 00015 #define _CCZ_PLATFORM_FONT_H_ 00016 00017 #include "IzPlatformFont.h" 00018 00019 class CzPlatformFont : public IzPlatformFont 00020 { 00021 // Properties 00022 protected: 00023 public: 00024 // Properties end 00025 public: 00026 int Init(); 00027 void Release(); 00028 00029 // Font creation / loading 00030 CzFontHandle CreateTTFontFromBuffer(void* memory_buffer, int memory_buffer_size, float point_size); 00031 void DestroyFont(CzFontHandle font); 00032 00033 // Prepared text 00034 CzFontPreparedText CreatePreparedText(); // Creates buffer to be used prepare text 00035 void DestroyPreparedText(CzFontPreparedText data); 00036 bool PrepareText(CzFontPreparedText prep, const char* text); // Prepares rendering optimised text data using the current font 00037 int GetTextHeight(CzFontPreparedText data); 00038 00039 // General font methods 00040 void SetCurrentFont(CzFontHandle font); 00041 void SetCurrentFontFlags(eCzFontFlags flags); 00042 void SetCurrentFontRect(const CzIRect& rc); 00043 void SetCurrentFontAlignment(eCzAlignH horiz, eCzAlignV vert); 00044 00045 }; 00046 00047 00048 #endif // _CCZ_PLATFORM_FONT_H_