c++ - 如何将字体文件集成(硬编码)到我的程序中?

标签 c++ fonts struct sfml hardcode

我目前正在将我的图像作为结构硬编码到我的 C++ 程序中(可以使用 GIMP 创建带有像素数据的源代码),如下所示:

static const struct {
  unsigned int   width;
  unsigned int   height;
  unsigned int   bytes_per_pixel;
  unsigned char  pixel_data[16 * 16 * 4 + 1];
} my_icon = {
  16, 16, 4,
  "...", pixel data here
};

一切正常,我很高兴!但现在我想对我正在使用的字体文件执行相同的操作。

由于 GIMP 为我进行了转换,但显然不能为我转换字体,我现在陷入困境,不知道如何像处理图像一样对 font.ttf 进行硬编码。

如果有任何相关性,这是我目前加载字体文件的方式:

sf::Font font;
if (!font.loadFromFile("font.ttf")) {
    std::cout << "Could not load font" << std::endl;
    return -1;
}

有人可以帮帮我吗? (字体小于 25 KB,所以没问题)

谢谢!!

最佳答案

It seem Font 有一个很好的 loadFromMemory 方法。因此,您可以完全按照前面的示例使用它,以字符串文字形式显示数据并将其传递过来。

编写一个程序将二进制文件转换为适合包含的\xHH hexdump 格式并不难。

关于c++ - 如何将字体文件集成(硬编码)到我的程序中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17406710/

相关文章:

c++ - 如何在 VS2012 中将类添加到 openframeworks 项目

c++ - cocos2d-x 中的鼠标/触摸坐标

白色轮廓、红色文本的 CSS3 技术

java - Win7/10 上 Tahoma 的不同字体版本?

c++ - (C++) 与结构和函数参数有关的简单问题

c++ - 为什么QTextDocument背景颜色仅更改一次?

c++ - Boost::ASIO HTTP POST 中的空主体

gradle - 导入自定义字体时出现抖动错误

go - 如何为谷歌自动生成的库初始化一个包含 slice 的结构

pointers - 返回类型与 struct golang 相同