add TileFont/FontManage
This commit is contained in:
parent
da0fba1760
commit
592a9343f4
2
CMCore
2
CMCore
@ -1 +1 @@
|
|||||||
Subproject commit bb66ce1f5a4b1f9dcbe61758813ffdd34ae7c1e3
|
Subproject commit 2e076881513560dd8111d3f101222dc2fd0b333e
|
26
inc/hgl/graph/font/FontManage.h
Normal file
26
inc/hgl/graph/font/FontManage.h
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
#ifndef HGL_GRAPH_FONT_MANAGE_INCLUDE
|
||||||
|
#define HGL_GRAPH_FONT_MANAGE_INCLUDE
|
||||||
|
|
||||||
|
#include<hgl/graph/font/Font.h>
|
||||||
|
#include<hgl/type/Map.h>
|
||||||
|
namespace hgl
|
||||||
|
{
|
||||||
|
namespace graph
|
||||||
|
{
|
||||||
|
struct FontConfig
|
||||||
|
{
|
||||||
|
};//
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 字体管理模块,包括所有的字体数据源,以及字符绘制器。<br>
|
||||||
|
* 在可期的未来,我们会增加对字体、字符的使用情况统计信息
|
||||||
|
*/
|
||||||
|
class FontManage
|
||||||
|
{
|
||||||
|
MapObject<Font,FontSource> sources;
|
||||||
|
|
||||||
|
TileFont *
|
||||||
|
};//class FontManage
|
||||||
|
}//namespace graph
|
||||||
|
}//namespace hgl
|
||||||
|
#endif//HGL_GRAPH_FONT_MANAGE_INCLUDE
|
@ -3,20 +3,34 @@
|
|||||||
|
|
||||||
#include<hgl/graph/TileData.h>
|
#include<hgl/graph/TileData.h>
|
||||||
#include<hgl/graph/font/FontSource.h>
|
#include<hgl/graph/font/FontSource.h>
|
||||||
|
#include<hgl/type/UnicodeBlocks.h>
|
||||||
|
|
||||||
namespace hgl
|
namespace hgl
|
||||||
{
|
{
|
||||||
namespace graph
|
namespace graph
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
* Tile字符管理<br>
|
||||||
|
* 本模块允许有多个字符数据来源,每个来源也可以对应多个unicode块, 但一个unicode块只能对应一个字体数据来源
|
||||||
|
*/
|
||||||
class TileFont
|
class TileFont
|
||||||
{
|
{
|
||||||
FontSource *source;
|
using FontSourcePointer=FontSource *;
|
||||||
|
using FontSourceTable=FontSourcePointer[(size_t)UnicodeBlock::RANGE_SIZE];
|
||||||
|
|
||||||
|
FontSourceTable source_map;
|
||||||
|
|
||||||
TileData *tile_data;
|
TileData *tile_data;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
TileFont()
|
||||||
|
{
|
||||||
|
hgl_zero(source_map);
|
||||||
|
}
|
||||||
};//class TileFont
|
};//class TileFont
|
||||||
|
|
||||||
|
TileFont *CreateTileFont(const Font &,const int=-1);
|
||||||
}//namespace graph
|
}//namespace graph
|
||||||
}//namespace hgl
|
}//namespace hgl
|
||||||
#endif//HGL_GRAPH_TILE_FONT_INCLUDE
|
#endif//HGL_GRAPH_TILE_FONT_INCLUDE
|
||||||
|
@ -157,7 +157,7 @@ Texture2D *CreateTextureFromFile(Device *device,const OSString &filename)
|
|||||||
return tex;
|
return tex;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/*
|
||||||
struct Texture2DData
|
struct Texture2DData
|
||||||
{
|
{
|
||||||
uint32 width;
|
uint32 width;
|
||||||
@ -219,5 +219,5 @@ void *LoadTextureFromFile(const OSString &filename)
|
|||||||
delete buf;
|
delete buf;
|
||||||
return tex;
|
return tex;
|
||||||
}
|
}
|
||||||
}
|
}*/
|
||||||
VK_NAMESPACE_END
|
VK_NAMESPACE_END
|
||||||
|
@ -95,6 +95,6 @@ TileData *Device::CreateTileData(const VkFormat format,const uint width,const ui
|
|||||||
else
|
else
|
||||||
return(nullptr);
|
return(nullptr);
|
||||||
|
|
||||||
return(new TileData(tex,width,height));
|
return(new TileData(this,tex,width,height));
|
||||||
}
|
}
|
||||||
VK_NAMESPACE_END
|
VK_NAMESPACE_END
|
||||||
|
Loading…
x
Reference in New Issue
Block a user