亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種調(diào)整動態(tài)圖片動畫時長的方法

文檔序號:8223352閱讀:2892來源:國知局
一種調(diào)整動態(tài)圖片動畫時長的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于計算機技術(shù)領(lǐng)域,尤其涉及一種調(diào)整動態(tài)圖片動畫時長的方法。
【背景技術(shù)】
[0002]目前,行業(yè)中的動態(tài)圖片(gif動畫)是由若干的png序列幀圖片組成的,通過順序播放序列幀圖片,讓原本靜態(tài)的圖片變的有生機;然而一個動態(tài)圖片的動畫由設(shè)計的序列幀,幀率所決定,播放的動畫可擴展性被限制;如果將動態(tài)圖片結(jié)合在某個媒介中,如視頻或照片中,限制性將被放大,動畫時長不能隨意調(diào)整;比如Adobe公司推出的Premiere,After EffectsS都是簡單粗暴的調(diào)整幀率,或者截斷動畫來實現(xiàn)調(diào)整動畫時長,這種方式破壞了動畫的完整度和效果,所帶來的添加動態(tài)圖片樂趣性將大大的減少,結(jié)合到其他媒介中的擴展性不高。

【發(fā)明內(nèi)容】

[0003]為了克服現(xiàn)有的動態(tài)圖片不能調(diào)整動畫時長或簡單的調(diào)整幀率或截斷動畫方案的局限性,本發(fā)明提供了一種調(diào)整動態(tài)圖片動畫時長的方法。
[0004]本發(fā)明的目的是通過以下技術(shù)方案來實現(xiàn)的:一種調(diào)整動態(tài)圖片動畫時長的方法,包括以下步驟:
(1)獲取動態(tài)圖片:所述動態(tài)圖片由若干張png序列幀圖片組成;
(2)建立json配置表:所述json配置表包含以下信息:循環(huán)段標識extendSect1n;由幀圖片的序號pic及該幀的開始時間time組成的幀數(shù)組frameArry ;由每段的開始時間beginTime、結(jié)束時間endTime、調(diào)整幀率標識Shrink、最短時長mintime和最長時長maxtime組成的分段數(shù)組timeArry ;根據(jù)動畫效果,設(shè)定需要調(diào)整的段的最短時長X秒(不小于X秒);
(3)將步驟(I)獲取的動態(tài)圖片分段,包括以下三種情況:
(3.1)分成三段:將具有進場效果、中間動畫和退場效果的動態(tài)圖片分為三段:開始段、循環(huán)段和結(jié)尾段;
(3.2)分成兩段,包括兩種情況:
a.所述的動態(tài)圖片動畫通過進場效果+停留段來實現(xiàn);
b.所述的動態(tài)圖片動畫通過進場效果+循環(huán)段或循環(huán)段+出場效果來實現(xiàn);
(3.3)不分段,包括兩種情況:
a.所述的動態(tài)圖片的序列幀比較少,動畫通過循環(huán)有限序列幀表現(xiàn);
b.所述的動態(tài)圖片的動畫是連續(xù)性動畫,即幀圖片中物體每幀動畫及坐標不一致;
(4)填寫json配置表,具體包括以下子步驟:
(4.1)根據(jù)步驟(I)中獲取的動態(tài)圖片自帶的幀填寫幀數(shù)組frameArry,對動態(tài)圖片自帶的幀中循環(huán)或者停留的幀做優(yōu)化:
如果有循環(huán)的幀:剔除循環(huán)一次外與之對應(yīng)的幀,這些幀的開始時間time不變,幀圖片的序號Pic填寫循環(huán)一次相應(yīng)的幀;
如果有停留的幀:保留開始停留的第一幀,剔除之后的幀,這些幀的開始時間time不變,幀圖片的序號Pic填寫停留的第一幀序號;
(4.2 )根據(jù)步驟(3 )中不同的分段方案,填寫不同的配置方案,不同的配置方案具有不同的延長和縮短方案,具體如下:
(4.2.1)如果分成三段,動畫延長方案如下:通過循環(huán)循環(huán)段,更新結(jié)束時間來實現(xiàn),保留動畫的完整性,循環(huán)標識extendSect1n填寫分段中的循環(huán)段的序號;
動畫縮短方案如下:截去進場和出場動畫,循環(huán)播放循環(huán)段動畫來實現(xiàn),開始段和結(jié)尾段的mintime寫0,maxtime寫本身段的時長;循環(huán)段mintime寫X,maxtime寫O (無限制);(4.2.2)如果分成兩段,根據(jù)步驟(3.2)中的第一種情況:動畫通過進場效果+停留段來實現(xiàn),在配置中timeArry中按開始段和停留段寫入2段,通過extendSect1n標示停留段是增加循環(huán)次數(shù)實現(xiàn)動畫延長的效果,而通過mintime和maxtime做截斷停留段來實現(xiàn)縮短動畫效果:開始段mintime寫本身段的時長,maxtime寫本身段的時長;停留段mintime 寫 X,maxtime 寫 O (無限制);
根據(jù)步驟(3.2)中的第二種情況:動畫通過進場效果+循環(huán)段或循環(huán)段+出場效果來實現(xiàn),延長動畫時,通過extendSect1n標示循環(huán)段是增加循環(huán)次數(shù),保留進場動畫,更新結(jié)束時間實現(xiàn)動畫延長的效果;縮短動畫時,通過mintime和maxtime做截斷開始段或結(jié)尾段 mintime 寫 X,maxtime 寫 O (無限制)。
[0005](4.2.3)如果不分段:根據(jù)步驟(3.3)中的第一種情況:動畫是一直循環(huán)該幾幀來表現(xiàn)的,縮短/延長動畫時長通過循環(huán)N次播放即可;
根據(jù)步驟(3.3)中的第二種情況:不能進行截斷操作,通過縮短調(diào)整幀率來實現(xiàn);
(4.3)完成json配置表的填寫,將配置表json表放置在動態(tài)圖片序列幀所處的文件夾中;
(5)顯示動態(tài)圖片:在媒介的動畫顯示層,調(diào)用json配置表,若沒有進行延長或縮短操作,動畫按照步驟(2)中json配置表中的幀數(shù)組frameArry填寫的png序列幀開始時間對應(yīng)的圖片按順序循環(huán)播放;
(6)調(diào)整動畫時長:當延長或縮短動態(tài)圖片的動畫時長時,調(diào)用json配置表中步驟(4.2)填寫的參數(shù)extendSect1n, Shrink,mintime和maxtime實現(xiàn)調(diào)整后的動畫效果。
[0006]本發(fā)明的有益效果是:本發(fā)明預(yù)先給動態(tài)圖片進行人為分段,通過配置json信息讓動畫時長變得可控,通過循環(huán)某段動畫或者裁剪非核心段動畫來延長或縮短動畫的顯示時長;這種方式突破了原有動畫的固定時長所帶來的局限性,讓動態(tài)圖片動畫時長可變,靈活性變大,并且原本的率幀不會改變,動畫順序上保持原先的路徑和效果,使得添加的動態(tài)圖片能夠完美融合到媒介中。
【附圖說明】
[0007]圖1是定義動態(tài)圖片動畫分段的步驟流程圖。
【具體實施方式】
[0008]下面結(jié)合附圖對本發(fā)明作進一步詳細說明。
[0009]本發(fā)明一種調(diào)整動態(tài)圖片動畫時長的方法,包括以下步驟:
(I)獲取動態(tài)圖片:所述動態(tài)圖片由若干張png序列幀圖片組成;考慮到實際效果,對最短時長做限制,根據(jù)動畫效果來確定,保持在0.5-0.8秒內(nèi);最長時長沒有限制。
[0010](2)建立json配置表:所述json配置表包含以下信息:循環(huán)段標識extendSect1n ;由幀圖片的序號pic及該幀的開始時間time組成的幀數(shù)組frameArry ;由每段的開始時間beginTime、結(jié)束時間endTime、壓縮標識Shrink、最短時長mintime和最長時長maxtime組成的分段數(shù)組timeArry。
[0011]json配置表示例如下:
{
"extendSect1n'O,//對動態(tài)圖片進行延長時長需要對某段進行循環(huán)的標識參數(shù),其中段以O(shè)開始
"frameArry":[
{"time":0.0, "pic":0},
{"time":0.1, "pic":l},
{"time":0.2,"pic":2},
{"time":0.3,"pic":3},
{"time":0.4,"pic":4},
{"time":0.5,"pic":4},
{"time":0.6,"pic":4},
{"time":0.7,"pic":5},
{"time":0.8,"pic":6},
{"time":0.9,"pic":7},
{〃time〃:1.0,〃piC〃:8} //動態(tài)圖片幀數(shù)和幀率],
〃timeArry〃:[
{"beginTime": 0.0, "endTime":1.l〃shrink〃:0, 〃minTime〃:0,
"maxTime": 0.77 }
json配置表中,通過{〃time〃:0,〃piC〃:0}的方式將動態(tài)圖片每幀的開始時間及顯示時長以列表形式記錄;通過timeArry將每段的開始時間、結(jié)束時間,是否可壓縮,最短和最長時長的數(shù)據(jù)以段落形式記錄;其中frameArry中的Time是開始時間和幀率,pic是對應(yīng)哪幀動態(tài)圖片;延長動畫通過配置表上方extendSect1n所填寫的數(shù)值來確定循環(huán)timeArry中哪段動畫;縮短動畫通過timeArry中Shrink,mintime和maxtime三個參數(shù)來實現(xiàn)。
[0012]縮短動畫的實現(xiàn)原理:shrink標示O為不可壓縮幀率,標示I為可以壓縮幀率;Mintime是每段的最短時長,如果在該段寫入這段本身的時長,說明該段是不能被截去的;如果寫入O則表示該段是可以被截去的;MaXtime是每段的最長時長,如果寫入這段本身的時長,表示該段在調(diào)整動畫后是保留原動畫效果的;如果寫入0,則表示該段在調(diào)整動畫后是做循環(huán)播放處理的。
[0013](3)如圖1所示,將步驟(I)獲取的動態(tài)圖片分段,包括以下三種情況: (3.1)分成三段:將具有進場效果、中間動畫和退場效果的動態(tài)圖片分為三段:開始段、循環(huán)段和結(jié)尾段;這種動態(tài)圖片的動畫效果主要是通過中間動畫來表現(xiàn),進出場段只是為了豐富動畫效果而已。
[0014](3.2)分成兩段,包括兩種情況:
a.所述的動態(tài)圖片動畫通過進場效果+停留段(停留某幀)來實現(xiàn)。
[0015]b.所述的動態(tài)圖片動畫通過進場效果+循環(huán)段或循環(huán)段+出場效果來實現(xiàn)。
[0016](3.3)不分段,包括兩種情況:
a.所述的動態(tài)圖片的序列幀比較少,動畫通過一直循環(huán)該幾幀實現(xiàn)的。
[0017]b.所述的動態(tài)圖片的動畫是連續(xù)性動畫,即幀圖片中物體每幀動畫及坐標不一致,不能進行截斷操作。
[0018](4)填寫json配置表,具體包括以下子步驟:
(4.1)根據(jù)步驟(I)中獲取的動態(tài)圖片自帶的幀填寫幀數(shù)組frameArry,對動態(tài)圖片自帶的幀
當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1