下面是我需要做的解释。它应该从图库中加载一张照片并将其显示在屏幕上。然后用户可以将公司的吉祥物的小图片拖入加载的照片中,最后保存。将图片添加到另一个
这个想法是,如果你从画廊应用程序中搜索照片,你可以找到原始照片以及吉祥物看起来就像它的修改过的照片。
问题是,我不确定要使用哪些类来完成此操作。我实际上将照片位图加载到ImageView
中,但是我不知道如何将吉祥物添加到位图中,我应该使用Canvas
?或者是什么程序?
下面是我需要做的解释。它应该从图库中加载一张照片并将其显示在屏幕上。然后用户可以将公司的吉祥物的小图片拖入加载的照片中,最后保存。将图片添加到另一个
这个想法是,如果你从画廊应用程序中搜索照片,你可以找到原始照片以及吉祥物看起来就像它的修改过的照片。
问题是,我不确定要使用哪些类来完成此操作。我实际上将照片位图加载到ImageView
中,但是我不知道如何将吉祥物添加到位图中,我应该使用Canvas
?或者是什么程序?
您可以从原始位图(以您的图库图像为基准)创建画布作为基础,并在其上绘制吉祥物,并将缩略图另存为另一个存储文件。
您必须计算绘画难度的位置。
Bitmap base; // Get it with your own approach, this refers to gallery image
Bitmap mascot; // Get it with your own approach, this refers to mascot image
Canvas canvas = new Canvas(base);
//0f and 0f refers to coordinates of drawing, you may want to do some calculation here.
canvas.drawBitmap(mascot, 0f, 0f, null);
// At this point base will have the mascot drawn, you may want to display it or save it somewhere else.
你需要做的图像第一可变的,然后在其上添加其他图像,并获得使其immutable-
bitmap3=mutableimage3.copy(Bitmap.Config.ARGB_4444,true);// mutable image.
bitmap3=mutableimage3.copy(Bitmap.Config.ARGB_4444,false);//immutable
有一个应用程序称为胡子疯狂...它的一个开源的..它提供了你所需要的... https://github.com/baugarten/Android-Image-Edit ..检查它的来源。
我目前正在显示ImageView上的'base'位图。如上所述,使用画布绘制“吉祥物”后,我需要显示它,是否可以通过ImageView完成,还是必须创建自定义视图? –
执行完上述所有代码后,您可以只做一个ImageView.setImageBitmap(base),然后您将更新新图像。另外保存为外部存储中的另一个文件,以便您以后可以检索它。编辑:抱歉,没有正确地阅读你的问题,你可以在你的屏幕上有两个imageview,第一个将使用原始图像设置,并且在完成绘图后,您可以将基本设置为第二个图像视图,当然再次执行setImageBitmap基于第一个ImageView也会产生效果。 –