c++ - Why object of type sf::Text returns different getPosition().y and getLocalBounds().top? -


i want precisely set position of sf::text in sfml 2.4.1, after set font, location improper.

#include <sfml/graphics.hpp> #include <iostream> #include <stdlib.h>  int main() {     sf::text text;     text.setcharactersize(24);     sf::font font;     font.loadfromfile("font.ttf"); //without loading font, everything's correct     text.setfont(font);     text.setstring("a string");     text.setposition(0, 61);     std::cout << text.getorigin().y;     std::cout << text.getposition().y;     std::cout << text.getglobalbounds().top;     std::cout << text.getlocalbounds().top;     if (text.getlocalbounds().top != text.getposition().y) return -1;     return 0; } 

i tried change origin, didn't help.

text.setorigin(0, text.getglobalbounds().height/2.f); //height correct , matches displays on screen(draw code unnecessary) 

any thoughts why?

this happens because first line aligned vertically on height of tallest character (even if it's not in string). keep top of string steady if add higher characters on first line. laurent.


Comments

Popular posts from this blog

qt - QML MouseArea onWheel event not working properly when inside QML Scrollview -

java - is not an enclosing class / new Intent Cannot Resolve Constructor -

python - Error importing VideoFileClip from moviepy : AttributeError: 'PermissionError' object has no attribute 'message' -