Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[SFML] Wyśrodkowanie tekstu

Ostatnio zmodyfikowano 2012-04-07 15:10
Autor Wiadomość
dfrugo
Temat założony przez niniejszego użytkownika
[SFML] Wyśrodkowanie tekstu
» 2012-04-07 12:57:12
Witam
Jak najłatwiej wyśrodkować napis względem jakiejś ramki.
C/C++
sf::Shape frameMenu = sf::Shape::Rectangle( 0, 0, 390, 45, sf::Color( 25, 25, 112 ), 5, sf::Color::White );
frameMenu.SetPosition( 205, 55 );

sf::String tekst;
tekst.SetText( L"MENU" );
tekst.SetColor( sf::Color::White );
Teraz musiałbym znaleźć środek tekstu używając
tekst.setCenter()
 i potem
tekst.setPosition()
 na środek ramki. Jednak nie potrafię znaleźć środka tego tekstu. Nie wiem też dlaczego nad tekstem jest parę dodatkowych pikseli. Tak, że tekst ustawiony w pozycji (0, 0) nie jest wyświetlany w tej pozycji tylko trochę niżej  tak: (0, 8). Dlatego
tekst.GetSize() / 2
 nie daje mi środka w osi y dopiero
( tekst.GetSize() + 8 ) / 2 )
.  Natomiast w osi x nie wiem w ogóle jak ten środek znaleźć. A może wogóle źle kombinuje i jest jakaś prostsza metoda?
P-54021
hincu
» 2012-04-07 15:03:11
P-54032
dfrugo
Temat założony przez niniejszego użytkownika
» 2012-04-07 15:10:21
Doszedłem do tej metody tylko nie wiem w osi Y i tak muszę dodać te 8 pikseli, żeby mi się to wyśrodkowało
C/C++
tekst.SetCenter( tekst.GetRect().GetWidth() / 2,( tekst.GetRect().GetHeight() + 8 ) / 2 )
P-54038
« 1 »
  Strona 1 z 1