关于使用QOpenglWidget进行2D文字绘制的注意事项


1、Qt提供的QOpenglWidget目前提供了使用QPainter在窗口中绘制2D文字及图形的能力,使用方法是在继承于QOpenglWidget的子类的paintGL方法中使用QPainter进行2D图形及文字的绘制,QPainter的使用需要

按照如下的方式方可正常使用

CustomWidget:public QOpenglWidget

{

virtual paintGl()

{

//render 3d   ,use   opengl

 

//render 2d or text

 

QPainter painter(this);

painter.drawText(100,100,"Hello World!");

painter.end();

 

}

}

 

2、绘制文字时,在作为3D渲染后,必须将渲染模型切换为 填充渲染,否则在2D 文字的渲染会出现异常

glPolygonMode(GL_FRONT_AND_BACK,GL_FILL);

若opengl上下文当前的渲染模型为GL_LINE,则文字渲染会出现异常

不能使用该种模型:glPolygonMode(GL_FRONT_AND_BACK,GL_LINE);

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM