【问题标题】:Can't get sf::Text to work无法让 sf::Text 工作
【发布时间】:2014-01-11 16:54:59
【问题描述】:

最近我遇到了一个问题。我无法让 sf::Text 工作。不知道为什么,字体似乎正在加载。 代码如下:

#include <SFML/Graphics.hpp>

int main()
{
// Create the main window
sf::RenderWindow app(sf::VideoMode(800, 600), "SFML window");

sf::Font font;
sf::Text text;
if(!font.loadFromFile("/usr/share/fonts/TTF/arial.ttf"))
   std::cout<<"Error";
text.setFont(font);
text.setCharacterSize(30);
text.setColor(sf::Color::Blue);
// Start the game loop
while (app.isOpen())
{
    // Clear screen
    app.clear();

    // Draw the sprite
    app.draw(text);

    // Update the window
    app.display();
 }

 return 0;
 }

有什么建议吗?

【问题讨论】:

  • 对 SFML 一无所知,但您是否真的在某处为 text 设置了文本?我只看到字体和颜色。
  • 在游戏循环之前尝试text.setString("Hello World");
  • 啊,我太笨了。很抱歉浪费您的时间xD

标签: c++ text sfml


【解决方案1】:
    sf::Text infoText;
    infoText.setPosition(0.0f, SCREEN_Y-23.0f);
    infoText.setCharacterSize(20);
    infoText.setString("press i for info");
    infoText.setFont(*resourceManager()->getFont(ResourceManager::FontResources::sansation_ttf));

为我工作。您是遇到错误,还是只是没有显示?

编辑:你给它的文字是什么?它可能被初始化为“”。默认位置可能是 (0,0),因此即使您没有明确设置它也不会有问题。

【讨论】:

    猜你喜欢
    • 2017-02-12
    • 2015-12-31
    • 2020-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-23
    • 2014-12-26
    • 2017-12-22
    相关资源
    最近更新 更多