在CameraPreview(Android)上绘制文本
基本上,我能够使用视图在CameraPreview上绘制一个简单的文本:在CameraPreview(Android)上绘制文本,android,text,opengl-es,camera,Android,Text,Opengl Es,Camera,基本上,我能够使用视图在CameraPreview上绘制一个简单的文本: class DrawOnTop extends View { public DrawOnTop(Context context) { super(context); // TODO Auto-generated constructor stub } @Override protected void onDraw(Ca
class DrawOnTop extends View {
public DrawOnTop(Context context) {
super(context);
// TODO Auto-generated constructor stub
}
@Override
protected void onDraw(Canvas canvas) {
// TODO Auto-generated method stub
Paint paint = new Paint();
paint.setStyle(Paint.Style.FILL);
paint.setColor(Color.BLACK);
paint.setFakeBoldText(true);
canvas.drawText("Test Text",
30,
30, paint);
super.onDraw(canvas);
}
}
但我希望在相机预览的底部有一个类似“祝酒词”的东西,而不是像这样的简单文本。我可以给你一个例子来说明我的意思,看看这张图片:
我想实现同样的目标,我尝试过opengles但没有成功。。。有人能帮忙吗?多谢各位
编辑:我可以在GLSurfaceView中绑定camerapreview,我只需要知道如何在OpenGLES中绘制一个包含文本的框,就像烤面包一样。感谢相机预览将转到SurfaceView或以编码形式馈送到您指定的自定义回调。SurfaceView不是为与其他小部件合成而设计的,因此您唯一的选择是自己解码预览并在屏幕外合成它,然后将其绘制到您自己的屏幕小部件(可以是SurfaceView)
有关如何进行屏幕外合成的示例,请参见此应用程序,在本例中,将OpenGL图形与相机预览相结合。您应该能够根据需要调整源代码。谢谢您的回答,我试图在手机上运行您的代码,但它引发了一个异常:02-08 12:17:40.207:E/AndroidRuntime(3738):nz.gen.geek_central.Compass3D.eglusive$EGLException:EGL创建Pbuffer曲面失败,错误为12288无论如何,我用OpenGLES做过类似的事情。我知道如何绑定相机预览,我只需要画一个框,里面有图片中的文本,而在“OnDraw”方法中,我不知道怎么做,就像在预览底部干杯一样。你能给我举一个用OpenGLES画出我所要的东西的例子吗?。谢谢你的帮助!