Bonjour à tous et à toutes
J'ai, dans mes fenêtres faites de convexShape, des objets de type sf::Text servant à afficher le titre.
Voici les opérations que je fais :
m_title.setPosition(floor(m_titleShape.getPosition().x+m_titleShape.width/2-m_title.getGlobalBounds().width/2),
floor(m_titleShape.getPosition().y+m_titleShape.getGlobalBounds().height/2-m_title.getGlobalBounds().height/2));
Ce code mets le titre à (0,0) avec la barre, le mets ensuite à (x/2,x/2), ce qui a pour effet de centrer le (0,0) du titre avec le centre de la barre et finalement, on soustrait la moitié du globalBounds en x et y pour mettre le centre du titre avec le centre de la barre.
Le problème survient lorsque je change la taille du sf::Text. Les opérations ci-haut fonctionne très bien pour une taille de de 8 à 12 pixels (le texte est pas mal centré, des fois un pixel à côté, mais lié au floor pour avoir un texte clair et non flou). Lorsque je met par exemple 20, là le texte est toujours centré sur X, mais n'est pas du tout centré sur Y. J'ai remarqué que le globalBound ne fait pas toujours la taille de la taille des caractères...
Avez-vous une solution qui fonctionne pour centrer du texte ?
merci et bonne journée !