在绘图之前找到sf :: Text宽度?

时间:2014-05-21 04:34:31

标签: c++ sfml

text.getLocalBounds()。width仅在绘制文本后起作用,并且我正在使用的代码结构不允许这样做。我要稍微重新安排一下程序,但我想知道是否有办法估算它。

1 个答案:

答案 0 :(得分:0)

我能够获得本地界限

    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));

    std::cout << "info text width: " <<  infoText.getLocalBounds().width << std::endl;

我每次都能获得正确的宽度。我的SFML版本略高于2.1,因为我需要一个额外的功能。您使用的是什么版本的SFML?

我在此提交中使用SFML:29c0f1491177d9125cc731f0c04bdf4c21c4650e