在Android本机活动中绘制文本
见鬼去吧 我做了一些本地活动,我想画一些文字。最简单的方法是什么?我可以使用openGL来实现这一点吗?如果可以,如何实现在Android本机活动中绘制文本,android,opengl-es,android-ndk,native-activity,Android,Opengl Es,Android Ndk,Native Activity,见鬼去吧 我做了一些本地活动,我想画一些文字。最简单的方法是什么?我可以使用openGL来实现这一点吗?如果可以,如何实现 感谢您的帮助。最简单的方法是使用文本创建纹理,并在场景上渲染(或不渲染)。 @Override protected void onDraw(Canvas canvas) { canvas.drawColor(0xffffffff); Paint p = new Paint(); p.setColor(Color.BLA
感谢您的帮助。最简单的方法是使用文本创建纹理,并在场景上渲染(或不渲染)。
@Override protected void onDraw(Canvas canvas) {
canvas.drawColor(0xffffffff);
Paint p = new Paint();
p.setColor(Color.BLACK);
p.setTextSize(25);
int left = 100;
int top = 200;
// draws text beginning at pixel 100,200
canvas.drawText(" some text ", left, top, p);
您也可以创建自己的文本引擎,但它更复杂。您需要在OpenGL中编写自己的文本渲染器。如果您有一个有限的字符串列表,那么只需在单个纹理中预先准备好所有字符串,并将它们渲染为每个单词的单个四元组,或者您可以有一个字符集,每个字符都有一个四元组。或者,您可以利用库进行渲染,在运行时将文本绘制到缓冲区中,然后将其渲染到四边形
如果这些都没有意义,我建议你去做一些基本的OpenGL教程。谷歌是你的朋友。一个功能非常丰富的字体库是FreeType:。我想使用本机活动,但在那里我不能使用java。在java代码中,我使用TextView。