2015-11-19 122 views
2

有沒有一種方法可以加快kivy加載動畫gif的速度? kivy是否有任何內置的方法,如壓縮或其他選項?我正在做的是使用動畫GIF作爲我的應用程序主屏幕的背景。這是矩陣,其中有大約30個不同的幀來創建所需的影響。對於30幀,我不希望這是超快速的,但單個加載的gif加載5-10秒似乎有點多。加速動畫gif kivy的加載

+0

Kivy支持在.zip文件中對一系列圖像進行動畫處理 - 我認爲部分原因是因爲它在不同平臺上支持更好(也許更快)。你可以試試這個。 – inclement

+0

我想有一個在Kivy示例文件夾中使用zip文件的例子。見[這裏](https://github.com/kivy/kivy/blob/master/examples/widgets/sequenced_images/main.py),對於kv文件,[這裏](https://github.com/ kivy/kivy /斑點/主/示例/部件/ sequenced_images/main.kv)。 – elParaguayo

回答

3

我相信這可能會對你有所幫助,我有一系列的png文件,我想在爆炸中進行動畫製作,而這是一場爆炸持續不斷的遊戲。最初,每次動畫發生時,遊戲都停滯不前,結結巴巴地可怕。這是我爲了讓我的遊戲順利運行而做的。我壓縮了png文件,並使用下面的代碼預加載它們,我將它們放在Screen小部件的__init__方法中,圖像出現在上面。

load_zipped_png_files = Image(
    source = 'explosion.zip', 
    anim_delay = 0, 
    allow_stretch = True, 
    keep_ratio = False, 
    keep_data = True) 

相信keep_data選項允許圖像(到緩存我想象),從有每次使用的時間來重新加載它們保存程序的預載。

現在可能是我錯了keep_data在這裏玩的角色(如果有人閱讀此文知道更好,請糾正我),但是通過壓縮文件並以這種方式使用它們,絕對可以使動畫順利地順利進行。你可以測試它有沒有keep_data = True並找出你自己。