我在带有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);
答案 0 :(得分:0)
代码正在运行。而且我怀疑这是一个字体加载问题,因为如果是这样,您应该在此行得到一个错误:
if(!font.loadFromFile("arialbd.ttf"))
return(-2);
您是否尝试过更新SFML?即使出于测试目的,因为它似乎是一个错误。