我想获取与画布关联的当前位图,以便可以对其执行 *** 作.我看不到该怎么做.
我已经看到了一些示例,在这些示例中,您创建了一个位图并将画布设置为使用该位图,因此显然您可以稍后再访问它,但是我使用的是从SurfaceHolder返回的画布,因此没有构造函数.
例如,示例经常显示这种情况:
Bitmap bmp = Bitmap.createBitmap(xxx, yyy, Bitmap.Config.ARGB_8888);Canvas c = new Canvas(bmp);
>因此,此时我可以看到bmp.
就我而言,画布是通过以下方式获得的:
final SurfaceHolder holder = getSurfaceHolder(); Canvas c = null; try { c = holder.lockCanvas();
那么如何获得c的位图?
编辑
@鲁本-你可能是对的,我确实对此感到奇怪.简而言之,我的目的是在绘制“材料”的地方捕获当前的画布内容,然后将其反转制作并复制到下面.像反思.我发现的示例通过位图完成了所有 *** 作,因此我假设我需要以某种方式将当前画布捕获到位图才能使用它.如果有更好的方法可以做到这一点,我全神贯注!
解决方法:
迟到总比不到好 :)
BitmapDrawable bitDrawable = new BitmapDrawable();bitmapDrawable.draw(vIDeoVIEw.getHolder().lockCanvas());
然后,您可以从BitmapDrawable返回位图.
以我为例:
imageVIEw.setimageBitmap(bitmapDrawable.getBitmap());
总结以上是内存溢出为你收集整理的java-如何获取画布的当前位图?全部内容,希望文章能够帮你解决java-如何获取画布的当前位图?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)