前言
咱們在生活中美化圖片的方法不少,貼紙花字是其中一種美化功能。Image Kit的貼紙花字可任意添加、拖動、縮放,且能夠自定義花字的文本內容,爲你的圖片增添新活力。java
應用場景
貼紙花字大多數可用於修圖軟件裏,你可選擇與圖片風格相搭配的貼紙花字,且類型豐富多樣。 ide
開發實戰
下面給你們介紹怎麼集成Image kit的貼紙花字能力:測試
開發準備
貼紙花字服務的全部接口的實現都是基於StickerLayout,是一個自定義View,import的包名爲com.huawei.hms.image.vision.sticker.StickerLayout,直接能夠集成在layout的XML中。
ui
步驟1: 獲取到StickerLayout對象。
經過findViewById獲取到StickerLayout對象後,能夠調用具體的邏輯方法。
this
StickerLayout mStickerLayout = findViewById(R.id.sticker_container);
步驟2: 提供資源文件。spa
貼紙定義規範,參見貼紙設計指導及規範。
花字定義規範,參見花字設計指導及規範。
設計
步驟3: 添加貼紙花字。
調用addSticker接口,添加貼紙花字,傳入資源文件路徑和文件名,若是返回碼爲0,則爲添加成功,貼紙花字總數最多能夠添加50個。
code
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: 更新花字的文本。blog
開發者能夠對花字文本進行編輯,經過回調方法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
原做者:胡椒