Android实现图片的裁剪(不调用系统功能)-创新互联
接上一篇文章:Android实现图片区域裁剪功能

上一篇文章提及了通过调用系统相册或拍照来实现图片的缩放\裁剪。不过这对于笔者项目的要求同样不适合,笔者需要的是通过对手机屏幕整个进行一个截图,并对这个截图进行裁剪操作。
依靠系统功能确实可以实现图片的裁剪,但是不够灵活。这里笔者提供一种较为灵活的做法。
但是这种做法的用户体验没有上篇文章的好,至于使用何种方法,读者应该自己衡量。
同样,我们先看实际效果图。
这里展示的是笔者项目的一小部分(阅读器):
我们点击左下角的剪切按钮
我们通过红色边框的四个角来控制裁剪的大小,移动红色框体来控制裁剪的位置区域。
接下来我们看看源码的实现:
首先点击剪切按钮的时候,我们应该生成一个Bitmap对象,传递给另一个Activty处理
具体做法如下:
cutP.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
//将一些按钮隐藏
cutP.setVisibility(View.INVISIBLE);
mTopBarSwitcher.setVisibility(View.INVISIBLE);
mPageSlider.setVisibility(View.INVISIBLE);
back.setVisibility(View.INVISIBLE);
mPageNumberView.setVisibility(View.INVISIBLE);
View view = MuPDFActivity.this.getWindow().getDecorView();
if (false == view.isDrawingCacheEnabled()) {
view.setDrawingCacheEnabled(true);
}
Bitmap bitmap = view.getDrawingCache();
ImageView imgv = new ImageView(MuPDFActivity.this);
imgv.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,
LayoutParams.FILL_PARENT-200));
imgv.setImageBitmap(bitmap);
backBitmap = bitmap;
//传递给另一个Activity进行裁剪
Intent intent = new Intent();
intent.setClass(MuPDFActivity.this, CutActivity.class);
startActivity(intent);
}
});
文章名称:Android实现图片的裁剪(不调用系统功能)-创新互联
URL网址:http://www.jxjierui.cn/article/dcsees.html


咨询
建站咨询
