Come posso utilizzare glutBitmapString () in C ++ per disegnare il testo sullo schermo?

StackOverflow https://stackoverflow.com/questions/544079

  •  23-08-2019
  •  | 
  •  

Domanda

Sto cercando di disegnare il testo sullo schermo utilizzando GLUT in 2d.

Voglio usare glutBitmapString (), qualcuno mi può mostrare un semplice esempio di ciò che si deve fare per l'installazione e correttamente utilizzare questo metodo in C ++ in modo da poter disegnare una stringa arbitraria in una (X, Y) posizione?

glutBitmapString(void *font, const unsigned char *string); 

sto usando Linux, e so che ho bisogno di creare un oggetto Font, anche se non so esattamente come e posso fornire con la stringa come secondo arguement. Tuttavia, come faccio anche specificare la posizione x / y?

Un rapido esempio di questo mi avrebbe aiutato molto. Se mi si può mostrare di creare il tipo di carattere, a chiamare il metodo che sarebbe meglio.

È stato utile?

Soluzione

Devi usare glRasterPos per impostare la posizione raster prima di chiamare glutBitmapString(). Si noti che ogni chiamata al glutBitmapString() fa avanzare la posizione di raster, così diverse chiamate consecutive saranno stampare le stringhe uno dopo l'altro. È inoltre possibile impostare il colore del testo utilizzando glColor() . Il set di font disponibili sono elencati qui .

// Draw blue text at screen coordinates (100, 120), where (0, 0) is the top-left of the
// screen in an 18-point Helvetica font
glRasterPos2i(100, 120);
glColor4f(0.0f, 0.0f, 1.0f, 1.0f);
glutBitmapString(GLUT_BITMAP_HELVETICA_18, "text to render");

Altri suggerimenti

L'aggiunta alla risposta di Adam,

glColor4f(0.0f, 0.0f, 1.0f, 1.0f);  //RGBA values of text color
glRasterPos2i(100, 120);            //Top left corner of text
const unsigned char* t = reinterpret_cast<const unsigned char *>("text to render");
// Since 2nd argument of glutBitmapString must be const unsigned char*
glutBitmapString(GLUT_BITMAP_HELVETICA_18,t);

https://www.opengl.org/resources /libraries/glut/spec3/node76.html per ulteriori opzioni di carattere

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top