集成華為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

原作者:胡椒


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM