2022-10-09 05:13:17 +00:00
|
|
|
#ifndef _CRASTERFONT
|
|
|
|
#define _CRASTERFONT
|
2022-04-10 00:17:06 +00:00
|
|
|
|
|
|
|
#include "types.h"
|
|
|
|
|
2022-12-23 02:15:25 +00:00
|
|
|
#include "Kyoto/TToken.hpp"
|
2022-09-13 04:26:54 +00:00
|
|
|
#include "rstl/pair.hpp"
|
|
|
|
#include "rstl/vector.hpp"
|
|
|
|
|
|
|
|
class CGlyph;
|
|
|
|
class CKernPair;
|
|
|
|
class CTexture;
|
2022-12-23 02:15:25 +00:00
|
|
|
class IObjectStore;
|
2022-09-13 04:26:54 +00:00
|
|
|
|
|
|
|
class CFontInfo {
|
|
|
|
private:
|
|
|
|
bool x0_;
|
|
|
|
bool x1_;
|
|
|
|
int x4_;
|
|
|
|
int x8_fontSize;
|
|
|
|
char xc_name[64];
|
|
|
|
};
|
|
|
|
|
|
|
|
class CRasterFont {
|
|
|
|
public:
|
|
|
|
CRasterFont(CInputStream&, IObjectStore*);
|
|
|
|
~CRasterFont();
|
|
|
|
|
2022-09-18 06:05:46 +00:00
|
|
|
void SetTexture(TToken< CTexture > token) { x7c_texture = token; }
|
2022-12-23 02:15:25 +00:00
|
|
|
bool IsFinishedLoading();
|
2022-09-13 04:26:54 +00:00
|
|
|
|
|
|
|
private:
|
|
|
|
bool x0_initialized;
|
|
|
|
int x4_monoWidth;
|
|
|
|
int x8_monoHeight;
|
|
|
|
rstl::vector< rstl::pair< wchar_t, CGlyph > > xc_glyphs;
|
|
|
|
rstl::vector< CKernPair > x1c_kerning;
|
|
|
|
int mode;
|
|
|
|
CFontInfo x30_fontInfo;
|
|
|
|
TLockedToken< CTexture > x7c_texture;
|
|
|
|
int x88_;
|
|
|
|
int x8c_baseline;
|
|
|
|
int x90_lineMargin;
|
|
|
|
};
|
|
|
|
CHECK_SIZEOF(CRasterFont, 0x94)
|
2022-04-10 00:17:06 +00:00
|
|
|
|
2022-10-09 05:13:17 +00:00
|
|
|
#endif // _CRASTERFONT
|