54 lines
1.4 KiB
Plaintext
54 lines
1.4 KiB
Plaintext
/*
|
|
文件名:Font.nut
|
|
路径:Core/BaseClass/TextObject/Font.nut
|
|
创建日期:2024-12-01 19:54
|
|
文件用途:字体对象
|
|
*/
|
|
__Font__Map__ <- {};
|
|
class Font extends CL_BaseObject {
|
|
|
|
function _typeof() {
|
|
return "font_data";
|
|
}
|
|
|
|
/*
|
|
* @函数作用: 构造函数
|
|
* @参数 不传参默认使用系统默认字体
|
|
* @参数 1: 字体名称
|
|
* @参数 2: 字体大小
|
|
* @参数 3: 字体粗细 (可选)
|
|
* @参数 4: 字体倾斜 (可选)
|
|
* @参数 5: 字体拉伸 (可选)
|
|
* @返回值
|
|
*/
|
|
constructor(...) {
|
|
local vargc = vargv.len();
|
|
//通过参数构造字体
|
|
if (vargc > 0) {
|
|
local family_name = vargv[0];
|
|
local size = vargv[1];
|
|
local weight = FontWeight.Normal;
|
|
if (vargc >= 3) weight = vargv[2];
|
|
local posture = FontPosture.Normal;
|
|
if (vargc >= 4) posture = vargv[3];
|
|
local stretch = FontStretch.Normal;
|
|
if (vargc >= 5) stretch = vargv[4];
|
|
C_Object = Font_CreateFont(family_name, size, weight, posture, stretch);
|
|
}
|
|
//初始化系统默认字体
|
|
else {
|
|
C_Object = Font_CreateFont();
|
|
}
|
|
base.constructor(C_Object);
|
|
}
|
|
|
|
function PreLoad(name) {
|
|
Font_PreloadFont(name);
|
|
}
|
|
|
|
//注册到全局表
|
|
function Register(Id) {
|
|
__Font__Map__[Id] <- this;
|
|
}
|
|
|
|
} |