blog/cpp/fonts/core/tables/table_name.h

164 lines
3.2 KiB
C
Raw Permalink Normal View History

2024-09-13 15:10:58 +08:00
#ifndef __TABLE_NAME_H__
#define __TABLE_NAME_H__
#include <map>
#include <string>
#define TABLE_NAME_OS2 = "OS/2"
#define TABLE_NAME_NAME = "name"
#define TABLE_NAME_AVAR = "avar"
#define TABLE_NAME_BASE = "BASE"
#define TABLE_NAME_CBDT = "CBDT"
#define TABLE_NAME_CBLC = "CBLC"
#define TABLE_NAME_CFF = "CFF"
#define TABLE_NAME_CFF2 = "CFF2"
#define TABLE_NAME_CMAP = "cmap"
#define TABLE_NAME_COLR = "COLR"
#define TABLE_NAME_CPAL = "CPAL"
#define TABLE_NAME_CVAR = "cvar"
#define TABLE_NAME_CVT = "cvt"
#define TABLE_NAME_DSIG = "DSIG"
#define TABLE_NAME_EBDT = "EBDT"
#define TABLE_NAME_EBLC = "EBLC"
#define TABLE_NAME_EBSC = "EBSC"
#define TABLE_NAME_FPGM = "fpgm"
#define TABLE_NAME_FVAR = "fvar"
#define TABLE_NAME_GASP = "gasp"
#define TABLE_NAME_GDEF = "GDEF"
#define TABLE_NAME_GLYF = "glyf"
#define TABLE_NAME_GPOS = "GPOS"
#define TABLE_NAME_GSUB = "GSUB"
#define TABLE_NAME_GVAR = "gvar"
#define TABLE_NAME_HDMX = "hdmx"
#define TABLE_NAME_HEAD = "head"
#define TABLE_NAME_HHEA = "hhea"
#define TABLE_NAME_HMTX = "hmtx"
#define TABLE_NAME_HVAR = "HVAR"
#define TABLE_NAME_JSTF = "JSTF"
#define TABLE_NAME_KERN = "kern"
#define TABLE_NAME_LOCA = "loca"
#define TABLE_NAME_LTSH = "LTSH"
#define TABLE_NAME_MATH = "MATH"
#define TABLE_NAME_MAXP = "maxp"
#define TABLE_NAME_MERG = "MERG"
#define TABLE_NAME_META = "meta"
#define TABLE_NAME_MVAR = "MVAR"
#define TABLE_NAME_PCLT = "PCLT"
#define TABLE_NAME_POST = "post"
#define TABLE_NAME_PREP = "prep"
#define TABLE_NAME_SBIX = "sbix"
#define TABLE_NAME_STAT = "STAT"
#define TABLE_NAME_SVG = "SVG"
#define TABLE_NAME_VDMX = "VDMX"
#define TABLE_NAME_VHEA = "vhea"
#define TABLE_NAME_VMTX = "vmtx"
#define TABLE_NAME_VORG = "VORG"
#define TABLE_NAME_VVAR = "VVAR"
enum tableName
{
os2,
name,
avar,
BASE,
CBDT,
CBLC,
CFF,
CFF2,
cmap,
COLR,
CPAL,
cvar,
cvt,
DSIG,
EBDT,
EBLC,
EBSC,
fpgm,
fvar,
gasp,
GDEF,
glyf,
GPOS,
GSUB,
gvar,
hdmx,
head,
hhea,
hmtx,
HVAR,
JSTF,
kern,
loca,
LTSH,
MATH,
maxp,
MERG,
meta,
MVAR,
PCLT,
post,
prep,
sbix,
STAT,
SVG,
VDMX,
vhea,
vmtx,
VORG,
VVAR,
};
const static std::map<std::string, tableName> tableNameMap = {
{"OS/2", os2},
{"name", name},
{"avar", avar},
{"BASE", BASE},
{"CBDT", CBDT},
{"CBLC", CBLC},
{"CFF", CFF},
{"CFF2", CFF2},
{"cmap", cmap},
{"COLR", COLR},
{"CPAL", CPAL},
{"cvar", cvar},
{"cvt", cvt},
{"DSIG", DSIG},
{"EBDT", EBDT},
{"EBLC", EBLC},
{"EBSC", EBSC},
{"fpgm", fpgm},
{"fvar", fvar},
{"gasp", gasp},
{"GDEF", GDEF},
{"glyf", glyf},
{"GPOS", GPOS},
{"GSUB", GSUB},
{"gvar", gvar},
{"hdmx", hdmx},
{"head", head},
{"hhea", hhea},
{"hmtx", hmtx},
{"HVAR", HVAR},
{"JSTF", JSTF},
{"kern", kern},
{"loca", loca},
{"LTSH", LTSH},
{"MATH", MATH},
{"maxp", maxp},
{"MERG", MERG},
{"meta", meta},
{"MVAR", MVAR},
{"PCLT", PCLT},
{"post", post},
{"prep", prep},
{"sbix", sbix},
{"STAT", STAT},
{"SVG", SVG},
{"VDMX", VDMX},
{"vhea", vhea},
{"vmtx", vmtx},
{"VORG", VORG},
{"VVAR", VVAR},
};
#endif