2015-09-17 6 views
0
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(); 
} 

Этот код не отображает текст на экране, а шрифт не загружается, я понятия не имею, что делать, любая помощь приветствуется.C++ SFML Font Problems

+0

Может быть, что путь для шрифта, который вы используете это неправильно? Попробуйте использовать абсолютный путь - из C:/в windows или/on osx/linux – twsaef

+0

Не повезло: «C: \ Coding \ Fonts \ Arial.ttf» ничего не сделал :( – groenewoldr

+0

успешно загрузил файл шрифта? –

ответ

2

Похоже, что путь к шрифту неверен. Если вы используете "arial.ttf", убедитесь, что файл шрифта находится в том же каталоге, в котором запускается ваша программа.

Как @twsaef сказал, что вы можете также использовать абсолютный путь, но не таким образом:

"C:\Coding\Fonts\Arial.ttf" 

Это неправильно. Вместо того, чтобы один обратный слеш \ вы должны использовать двойной обратный слэш \\:

"C:\\Coding\\Fonts\\Arial.ttf"