2013-10-24 111 views
-3

我正嘗試在所有客戶端上本機不存在的網頁上使用字體。有沒有辦法檢測到缺少的字體,並通知用戶在哪裏下載?網頁上缺少字體

+2

爲什麼不只需使用'@ font-face'將其提供給每個人? –

+0

首先,我試圖使用一個字體,它是從fontsquirrel列入黑名單的。我需要將其轉換,以便我們向客戶展示該網站的情況,然後我們將購買該許可證。其次,我寧願那些沮喪地回答爲什麼他們低估的人。 – Panagiotis

回答

4

@font-face的方式是更優雅,但在這裏,如果你要通知用戶(雖然我強烈建議你把@font-face)的解決方案:

你可以使用像FontChecker一個腳本來檢查字體可用。它依賴於MooTools和被調用是這樣的:

window.addEvent('domready',function() { 
    var fc = new FontChecker(); 
    if (!fc.check('Some Font')) { 
    alert('Please install "Some Font"!'); 
    } 
}); 

如果有些字體不可用,會出現一條消息。

如果您不使用MooTools,那麼其他庫或香草JS(=沒有庫的普通JS)也有相似的腳本。或者只是重寫它,it's quite short

一些其他的腳本(我不認識他們,我只用FontChecker):

+0

我相信這是我想要的。我會在幾分鐘內接受你:)謝謝大家的回覆。 – Panagiotis

0

如果字體授權在公共網頁上使用,則可以使用@font-face,如其他答案中所引用的。

但是,大多數商業字體並未獲得網絡使用許可,因爲任何人都可以檢查自己的CSS並自行下載字體。

最好的辦法是從谷歌網頁字體等服務中選擇不同的字體,並使用@ font-face。

http://www.google.com/fonts

+0

我知道這一點。我主要想要檢測該字體是否存在於計算機上(而不必訪問文件)。例如(有問題),我想使用pc本地的cambria字體。 – Panagiotis

0

另一種方法是cufon。但它不是純粹的CSS,它使用JS來創建基於畫布的字體。