成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

HarmonyOS 基于JS API 之逐幀圖動畫

系統 OpenHarmony
本文將帶來一種CSS逐幀圖動畫。本DEMO是基于HarmonyOS JS API開發,實現該動畫效果的動畫屬性從API version 6開始支持。

??想了解更多內容,請訪問:??

??51CTO和華為官方合作共建的鴻蒙技術社區??

??https://harmonyos.51cto.com??

前言

動畫是前端必不可少的一部分。實現動畫有許多種方式,本文將帶來一種CSS逐幀圖動畫。本DEMO是基于HarmonyOS JS API開發,實現該動畫效果的動畫屬性從API version 6開始支持。

效果展示

動畫屬性

實現原理

通過快速循環切換背景圖片(背景圖片必須是長逐幀圖片)的位置,達到看起來像在播放視頻的一種動畫效果。

步驟拆分

  • 準備逐幀圖片。
  • 將逐幀圖片合成我們所需要的長逐幀背景圖片。
  • 使用CSS animation的step屬性 實現動畫效果。

1. 逐幀圖片要求

所有幀寬高相等,按照播放順序命名(一般軟件導出的有自動按播放順序命好名),如果是像本文做無限循環動畫,那么第一幀和最后一幀的圖像必須保持相同,不然會導致最后動畫效果不流暢。

2. 合成長逐幀圖

逐幀動畫雪碧圖生成器:https://pspgbhu.github.io/fsm/ 。

用這個大佬的網址可以合成長逐幀圖(后面用"長圖"二字代表長逐幀圖),點擊"上傳圖片"按鈕將第一步得到的圖片批量上傳,接著網站會自動檢測出圖片寬高,然后可以選擇生成橫向或豎向排列的長圖,下圖中有說明如何選擇橫向或豎向。最后點擊"生成圖片"按鈕,中間空白處就會出現合成的長圖,鼠標右擊圖片選擇另存為就可以獲取到長圖了。

合成長逐幀圖展示

3. 使用CSS animation 屬性實現動畫

hml文件

<div class="container">
<div class="role">
</div>
</div>

css文件

.container {
flex-direction: column;
justify-content: center;
align-items: center;
width: 100%;
height: 100%;
}
.role {
width: 153px;
height: 208px;
background-image: url(/common/images/stepImg.png);
/* 4992px 為長圖的高度 */
background-size: 153px 4992px;
background-repeat: no-repeat;
/* steps(23)括號內數字寫png幀圖總幀數減去一的數量 */
animation: stepAnim 2s steps(23) infinite;
}
@keyframes stepAnim {
/* 注意:下面這句大括號里面的一定要加上,要變化的屬性必須給初始值。 */
from { background-position: 0px 0px;}
/* -4784px 為png幀圖總高度減去一幀的高度*/
to { background-position: 0px -4784px;}
}

源碼

源碼地址:https://gitee.com/CJcrazycool/harmony-os-css-step

總結

steps函數,它可以傳入兩個參數,第一個是大于0的整數,該參數是將間隔動畫等分成指定數目的小間隔動畫,然后根據第二個參數來決定顯示效果。

第二個參數為start時,在變化過程中,都是以下一幀的顯示效果來填充間隔動畫;

第二個參數為end時,與上面相反,都是以上一幀的顯示效果來填充間隔動畫。

本文動畫方案適用于尺寸比較小的局部動畫,幀數不宜過多,最好100幀以內。

??想了解更多內容,請訪問:??

??51CTO和華為官方合作共建的鴻蒙技術社區??

??https://harmonyos.51cto.com??

責任編輯:jianghua 來源: 鴻蒙社區
相關推薦

2014-07-15 10:23:10

Android補間動畫

2022-08-05 19:22:27

Service模板鴻蒙

2022-05-24 07:40:40

CSS逐幀動畫圖片輪播

2024-03-20 09:40:27

動畫技巧CSS逐幀動畫

2009-12-31 15:05:00

Silverlight

2022-05-23 10:53:54

canvas柱狀圖鴻蒙

2012-02-23 11:45:23

虛擬化SRM桌面虛擬化

2022-07-20 15:24:47

ArkUI動畫效果項目開發

2021-02-24 09:36:03

鴻蒙CSS應用開發

2019-07-24 15:25:29

框架AI開發

2013-10-31 15:12:57

CloudaAPI

2022-03-09 09:23:17

AI引擎檢測

2019-12-03 09:27:03

機器人人工智能系統

2022-02-25 14:57:33

harmonyOSjava心形動畫

2024-07-09 08:43:29

2013-04-24 13:51:48

Windows PhoWindows Pho

2013-04-24 14:52:53

Windows PhoWindows Pho

2023-10-17 13:49:36

ArkTS動畫開發

2022-02-18 09:04:22

動畫SwiftUI工具:

2022-02-23 12:23:28

協議動畫SwiftUI
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产成人亚洲精品 | 亚洲天堂免费在线 | 久久国产一区 | 成人欧美一区二区三区白人 | 日韩欧美视频 | 国产一级大片 | 伦理午夜电影免费观看 | 成人国产午夜在线观看 | 国产免费va | 国产一区二区三区 | 欧美日韩综合 | 日韩电影在线 | 国产网站在线免费观看 | 国产aaaaav久久久一区二区 | 91.xxx.高清在线 | 韩国理论电影在线 | 性一爱一乱一交一视频 | 精品国产精品一区二区夜夜嗨 | 精品国产视频 | 亭亭五月激情 | 成年人在线观看视频 | 国产精品一区二区免费 | 久久丝袜 | 中文字幕日韩在线观看 | 日日干日日 | 国产片一区二区三区 | 99免费看| 一级看片免费视频囗交动图 | 99精品视频免费观看 | 久久久综合色 | 日日操夜夜操天天操 | 亚洲欧美自拍偷拍视频 | 欧美一区二区三区在线视频 | 日韩视频观看 | 欧美一二区 | 久久久久国产精品一区三寸 | 日韩精品一区二区三区高清免费 | 久久国产精品免费视频 | 欧美一级黄色网 | 日韩尤物视频 | 欧美国产日韩在线观看 |