前言

在我们拍摄完一张照片后,为了让照片更好看、比例更完美经常会裁剪掉多余的部分。华为Image Kit图片裁剪功能给您提供设置裁剪比例、设置裁剪图形、图片旋转等一系列便捷的操作。

应用场景

我们最常用的是手机相机拍摄图片,或者用修图软件直接裁剪再进行美化,提供了方便性。

在这里插入图片描述

开发实战

下面给大家介绍怎么集成Image kit的图片裁剪能力:

编辑调整服务,图片裁剪服务的所有接口的实现都是基于CropLayoutView,是一个自定义View,import的包名为com.huawei.hms.image.vision.crop.CropLayoutView,可以直接集成在layout的XML中。

步骤1:获取到CropLayoutView对象。
通过findViewById获取到CropLayoutView 对象后,可以调用具体的逻辑方法。

CropLayoutView cropLayoutView =   findViewById(R.id.cropImageView);

步骤2: 设置需要裁剪的图片,设置完成后,就可以对view进行操作。

cropLayoutView.setImageBitmap(inputBm);

l 如果需要图片旋转90,则调用图片旋转接口。

cropLayoutView.rotateClockwise();

l 如果需要图片水平方向镜像,则调用图片水平方向镜像接口。

 cropLayoutView.flipImageHorizontally();

l 如果需要图片竖直方向镜像,则调用图片竖直方向镜像接口。

cropLayoutView.flipImageVertically();

l 如果需要裁剪固定比例的图片,则调用如下接口。

cropLayoutView.setAspectRatio(ratioX, ratioY);

l 如果需要裁剪任意比例的图片,则调用如下接口。

cropLayoutView.setFixedAspectRatio(false);

l 如果需要裁剪矩形形状的图片或者椭圆形形状的图片,则调用如下接口。

// 矩形
 cropLayoutView.setCropShape(CropLayoutView.CropShape.RECTANGLE);
 // 椭圆形
 cropLayoutView.setCropShape(CropLayoutView.CropShape.OVAL);

步骤3: 调整好图片被裁剪的大小,获取裁剪后图片的bitmap格式。

Bitmap croppedImage = cropLayoutView.getCroppedImage();

DEMO效果

在这里插入图片描述


原文链接:https://developer.huawei.com/consumer/cn/forum/topic/0204404704666920206?fid=18

原作者:胡椒


华为开发者论坛
352 声望56 粉丝

华为开发者论坛是一个为开发者提供信息传播、开发交流、技术分享的交流空间。开发者可以在此获取技术干货、华为源码开放、HMS最新活动等信息,欢迎大家来交流分享!


引用和评论

0 条评论