2010-05-21 52 views
6

我想創建一個離線HTML5測試應用程序,並且正在同時玩新的谷歌字體API。有沒有人有任何想法如何緩存遠程字體?簡單地把api調用放在緩存清單中是行不通的,我認爲這是因爲api實際上加載了其他文件(ttf,eot等)。HTML5脫機緩存谷歌字體API

任何想法,如果使用脫機字體api將是可能的?

供參考,這是我正在電話:

http://fonts.googleapis.com/css?family=IM+Fell+English|Molengo|Reenie+Beanie 

回答

5

如果粘貼網址到瀏覽器地址欄,你會看到這些文件的CSS鏈接:

http://themes.googleusercontent.com/font?kit=txVk61PTIsDrQQj2fK-76Q 
http://themes.googleusercontent.com/font?kit=ljpKc6CdXusL1cnGUSamX_cCQibwlboQP4eCflnqtq0 
http://themes.googleusercontent.com/font?kit=xwIisCqGFi8pff-oa9uSVOj-KzHqS7w8OFmqoAXdQwE 
+3

但你必須小心。谷歌根據您要求的操作系統給你不同的字體文件。所以,你應該添加所有操作系統的所有字體文件 – 2013-04-16 09:23:39

+1

確實。一種緩存所有文件擴展名的方法在這個stackoverflow問題中描述:http://stackoverflow.com/questions/7042834/is-it-possible-to-load-webfonts-through-the-offline-storage-cache-manifest – 2013-09-06 08:50:50

6

Robertc的方法是解決方案...

即,將谷歌提供的鏈接粘貼到您的瀏覽器中,然後添加任何引用到您的清單中的文件。

在我來說,我引用

<link href='http://fonts.googleapis.com/css?family=Patua+One' rel='stylesheet' type='text/css'> 

剛剛由下面的樣式定義

@font-face { 
    font-family: 'Patua One'; 
    font-style: normal; 
    font-weight: 400; 
    src: local('Patua One'), local('PatuaOne-Regular'), url('http://themes.googleusercontent.com/static/fonts/patuaone/v3/yAXhog6uK3bd3OwBILv_SD8E0i7KZn-EPnyo3HZu7kw.woff') format('woff'); 
} 

所以可以獲得字體的工作緩存(離線或沒有)時,你有將'src'中引用的URL添加到清單中。