К сожалению, вы не можете.
glutBitmapCharacter
использует glBitmap
для растрового изображения (и "блика") растрового изображения до кадрового буфера в соотношении пикселей 1: 1. Таким образом, растровое изображение не может быть масштабировано, и позиция устанавливается как glWindowPos
соответственно glRasterPos
.
Если вы хотите нарисовать текст с другим размером, вам нужно выбрать другой шрифт, например glutBitmapCharacter
.
Когда вы используете glutStrokeCharacter
, текст рисуется строчными примитивами. Толщина текста может быть установлена glLineWidth
. Положение и размер текста могут зависеть от текущей модели представления матрицы и матрицы проекции. Таким образом, положение текста можно установить с помощью glTranslate
, а размер можно изменить с помощью glScale
. Текст можно даже повернуть на glRotate
.
например:.
def blit_text(x,y,font,text,r,g,b):
glColor3f(r,g,b)
glLineWidth(5)
glTranslatef(x, y, 0)
glScalef(1, 1, 1)
for ch in text:
glutStrokeCharacter(font,ctypes.c_int(ord(ch)))
glMatrixMode(GL_PROJECTION)
glLoadIdentity()
glOrtho(0, windowWidth, 0, windowHeight, -1, 1)
glMatrixMode(GL_MODELVIEW)
glLoadIdentity()
blit_text(10, 10, GLUT_STROKE_ROMAN, "**", 0, 1, 0)
См. Также freeglut - 14. Функции рендеринга шрифтов для использования glutBitmapString
соответственно glutStrokeString
.