sf::RenderWindow window(sf::VideoMode(800, 600), "CALENDAR");
sf::Font font;
if (!font.loadFromFile("arial.ttf"))
std::cout << "no\n";
sf::Text text1;
text1.setFont(font);
text1.setCharacterSize(30);
text1.setColor(sf::Color::Black);
text1.setStyle(sf::Text::Regular);
text1.setString("ttestst");
while (window.isOpen())
{
sf::Event event;
while (window.pollEvent(event))
{
switch (event.type){
case sf::Event::Closed:
window.close();
}
}
window.clear(sf::Color::White);
window.draw(text1);
window.display();
}
此代码未在屏幕上显示文字,且字体未加载,我不知道该怎么做,感谢任何帮助。
答案 0 :(得分:2)
看起来字体的路径是错误的。如果您正在使用"arial.ttf"
,请确保该字体文件位于程序开始执行的同一目录中。
正如@twsaef所说,你也可以使用绝对路径,但不是这样:
"C:\Coding\Fonts\Arial.ttf"
这是错误的。您必须使用双反斜杠\
:
\\
"C:\\Coding\\Fonts\\Arial.ttf"