• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

SFML problem z obiektem sf::Text

Object Storage Arubacloud
0 głosów
518 wizyt
pytanie zadane 29 marca 2017 w C i C++ przez sofnir Gaduła (4,690 p.)

Hej, moim zadaniem było stworzenie tekstu, a następnie obiektu sf::Shape, który będzie tłem dla tego tekstu. Napisałem cos takiego.

text.setString("NONE");
text.setFont(game->font);
text.setCharacterSize(30);
text.setFillColor(sf::Color::Red);
text.setOrigin(text.getLocalBounds().width / 2, text.getLocalBounds().height / 2);
text.setPosition(200, 200);
shape.setSize(sf::Vector2f(text.getLocalBounds().width, text.getLocalBounds().height));
shape.setOrigin(shape.getSize().x / 2, shape.getSize().y / 2);
shape.setPosition(text.getPosition().x, text.getPosition().y);
shape.setFillColor(sf::Color::Black);

W wyniku tego otrzymuję to:

Bez sensu... Jeśli zrobię coś takiego np. ze spritem to działa, tlyko z tekstem nie działa. Wie ktoś jak to naprawić?

komentarz 29 marca 2017 przez 10kw10 Pasjonat (22,880 p.)
edycja 29 marca 2017 przez 10kw10
Cos jest chyba nie tak z originami, nie wyglada jakby byly takie same.

Sprobuj moze setOrigin(text.getOrigin.x ...);
komentarz 30 marca 2017 przez MetGang Nałogowiec (34,360 p.)
Boundsy tekstu zależą od czcionki, które są dość dziwne i raczej nie ma sprawdzonego sposobu, aby zrobić to jak chcesz. Najlepszym podejściem będzie bawienie się metodą prób i błędów (np przemnożenie y przez 2).
komentarz 30 marca 2017 przez sofnir Gaduła (4,690 p.)
To w jaki sposób ludzie robią klasę button, gdzie tekst zawsze jest na środku?
komentarz 30 marca 2017 przez MetGang Nałogowiec (34,360 p.)
Najlepiej spytaj się tych ludzi, lecz wątpię by ktoś robiąc widgety/gui posługiwał się SFMLem i jego obiektami.

Zazwyczaj ludzie robią własne rzeczy na bazie np. OpenGL (SFGUI, ImGui) lub innej biblioteki, a potem robią interfejs za pomocą SFMLa.
komentarz 30 marca 2017 przez sofnir Gaduła (4,690 p.)
No tak, ale te GUI są robione na podstawie pewnie OpenGL, no cóż zrobię to metodą prób i błędów, dodam piksele tak żeby mi to pasowało.
komentarz 30 marca 2017 przez MetGang Nałogowiec (34,360 p.)
No mówię, ja to robiłem na zasadzie dublowania wysokości i wyniki były dość zadowalające.

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
2 odpowiedzi 267 wizyt
pytanie zadane 7 września 2016 w C i C++ przez Gracjan Pasik Obywatel (1,810 p.)
0 głosów
0 odpowiedzi 533 wizyt
pytanie zadane 14 stycznia 2017 w C i C++ przez Pajdas Mądrala (5,930 p.)
0 głosów
1 odpowiedź 68 wizyt
pytanie zadane 12 czerwca 2020 w C i C++ przez matinio Nowicjusz (140 p.)

92,583 zapytań

141,434 odpowiedzi

319,668 komentarzy

61,966 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...