集成华为Image Kit美化功能 为你的图片增添新元素
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了集成华为Image Kit美化功能 为你的图片增添新元素相关的知识,希望对你有一定的参考价值。
前言
我们在生活中美化图片的方法很多,贴纸花字是其中一种美化功能。Image Kit的贴纸花字可任意添加、拖动、缩放,且可以自定义花字的文本内容,为你的图片增添新活力。
应用场景
贴纸花字大多数可用于修图软件里,你可选择与图片风格相搭配的贴纸花字,且类型丰富多样。
开发实战
下面给大家介绍怎么集成Image kit的贴纸花字能力:
开发准备
贴纸花字服务的所有接口的实现都是基于StickerLayout,是一个自定义View,import的包名为com.huawei.hms.image.vision.sticker.StickerLayout,直接可以集成在layout的XML中。
步骤1: 获取到StickerLayout对象。
通过findViewById获取到StickerLayout对象后,可以调用具体的逻辑方法。
StickerLayout mStickerLayout = findViewById(R.id.sticker_container);
步骤2: 提供资源文件。
贴纸定义规范,参见贴纸设计指导及规范。
花字定义规范,参见花字设计指导及规范。
步骤3: 添加贴纸花字。
调用addSticker接口,添加贴纸花字,传入资源文件路径和文件名,如果返回码为0,则为添加成功,贴纸花字总数最多可以添加50个。
int resultCode = mStickerLayout.addSticker(rootPath, fileName);
请求接口参数描述: |
参数列表 | 类型 | M/O(必选/可选) | 说明 |
---|---|---|---|---|
rootPath | String | M | 资源文件根目录。 | |
fileName | String | M | 如果是贴纸,需要指定的文件名,其他可以传null。 |
代码示例:
addSticker(rootPath + "贴纸1", "sticker_10_editable.png");
addSticker(rootPath + "花字4", null);
步骤4: 更新花字的文本。
开发者可以对花字文本进行编辑,通过回调方法setStickerLayoutListener(new StickerLayout.StickerLayoutListener())
获取花字文本编辑对象textEditInfo,textEditInfo 调用setText,进行文字编辑,最后mStickerLayout调用updateStickerText方法进行更新。
//获取TextEditInfo对象
mStickerLayout.setStickerLayoutListener(new StickerLayout.StickerLayoutListener() {
@Override
public void onStickerLayoutClick() {
}
@Override
public void onStickerTouch(int index) {
}
@Override
public void onTextEdit(TextEditInfo textEditInfo) {
StickerActivity.this.textEditInfo = textEditInfo;
}
@Override
public void needDisallowInterceptTouchEvent(boolean isNeed) {
}
});
//更新花字文本为"花字测试"字样
textEditInfo.setText("花字测试");
mStickerLayout.updateStickerText(textEditInfo);
DEMO效果
原文链接:https://developer.huawei.com/consumer/cn/forum/topic/0204403856067210183?fid=18
原作者:胡椒
以上是关于集成华为Image Kit美化功能 为你的图片增添新元素的主要内容,如果未能解决你的问题,请参考以下文章
用华为HMS ML kit人体骨骼识别技术,Android快速实现人体姿势动作抓拍