sfml在绘制文本时崩溃

时间:2019-02-11 11:01:37

标签: c++ gcc sfml

我在带有sfml 2.5.0的gcc编译器5.1.0中使用代码块。 Sfml在绘制形状时可以很好地工作,但是当我尝试显示我的文本时,编译后的程序崩溃了。

我尝试了不同的.ttf字体,但没有一种起作用。

#include <SFML\Graphics.hpp>
using namespace sf;
int main()
{
    RenderWindow win(sf::VideoMode(640, 480), "SFML Test");
    Font font;
    if(!font.loadFromFile("arialbd.ttf"))
        return(-2);
    Text text;
    text.setFont(font);
    text.setString("raptor inc");
    text.setCharacterSize(24);
    text.setFillColor(sf::Color::Red);

    text.setPosition(100,100);
    int i=0,j=0;
    while (win.isOpen())
    {
        sf::Event event;
        while (win.pollEvent(event))
        {
            if (event.type == sf::Event::Closed)
            {
                win.close();
            }
        }

        win.clear();
        win.draw(text);
        win.display();
    }

    return 0;
}

在执行代码时我没想到会出现任何错误,但是程序崩溃了。

程序崩溃了。

win.draw(text);

1 个答案:

答案 0 :(得分:0)

代码正在运行。而且我怀疑这是一个字体加载问题,因为如果是这样,您应该在此行得到一个错误:

if(!font.loadFromFile("arialbd.ttf"))
    return(-2);

您是否尝试过更新SFML?即使出于测试目的,因为它似乎是一个错误。