如果您想應用此修補程序,則必須自己託管字體。
您的Google Fonts鏈接是樣式表的請求,它根據您提供的參數以及瀏覽器檢測動態構建。對於示例鏈接:
<link href='http://fonts.googleapis.com/css?family=Asap:400,700,400italic,700italic' rel='stylesheet' type='text/css'>
如果你確實提出這項要求自己使用curl
:
$ curl http://fonts.googleapis.com/css?family=Asap:400,700,400italic,700italic
這是被送回:
@font-face {
font-family: 'Asap';
font-style: normal;
font-weight: 400;
src: local('Asap'), local('Asap-Regular'), url(http://themes.googleusercontent.com/static/fonts/asap/v1/-KZsao_xwBpcExaHoPH8_w.ttf) format('truetype');
}
@font-face {
font-family: 'Asap';
font-style: normal;
font-weight: 700;
src: local('Asap Bold'), local('Asap-Bold'), url(http://themes.googleusercontent.com/static/fonts/asap/v1/5DVGWnz9Skaq1amwwwGZEw.ttf) format('truetype');
}
@font-face {
font-family: 'Asap';
font-style: italic;
font-weight: 400;
src: local('Asap Italic'), local('Asap-Italic'), url(http://themes.googleusercontent.com/static/fonts/asap/v1/8YIp-EIJXA6NJdTPxy9qiQ.ttf) format('truetype');
}
@font-face {
font-family: 'Asap';
font-style: italic;
font-weight: 700;
src: local('Asap Bold Italic'), local('Asap-BoldItalic'), url(http://themes.googleusercontent.com/static/fonts/asap/v1/_sVKdO-TLWvaH-ptGimJBaCWcynf_cDxXwCLxiixG1c.ttf) format('truetype');
}
做最簡單的事情是返回Google Web Fonts,通過去here並單擊下載箭頭來下載有問題的字體。
然後你可以使用suggested fix from here,引用您下載的字體文件:
@font-face {
font-family: ‘MyWebFont’;
src: url(‘webfont.eot’);
src: url(‘webfont.eot?#iefix’) format(‘embedded-opentype’),
url(‘webfont.svg#svgFontName’) format(‘svg’),
url(‘webfont.woff’) format(‘woff’),
url(‘webfont.ttf’) format(‘truetype’);
}
非常感謝您的回答! 我已經擺弄了一段時間了,而且「差不多」讓它起作用了。問題是,使用新的自託管字體方法,所有瀏覽器似乎都呈現與原始谷歌樣式表請求鏈接不同的字體。 Firefox和IE使它變得更大,更胖/粗體,並且Chrome似乎使它更好一些,但也不太正確。 請參考下面的示例圖片。 !http://www.gadaffi.dk/example.jpg 任何想法? :/ – Farsen
正如我所提到的,Google webfonts使用瀏覽器進行檢測,因此它會發送稍微不同的內容,並根據提出請求的用戶的瀏覽器進行定製。這沒有完美的解決方案。我的建議是通常停止瞄準像素完美匹配跨瀏覽器 - 它不應該這樣工作。 –
好像是因爲這是一個Windows/Chrome問題,他們可以用瀏覽器修復DirectWrite問題,或者如上所述修復字體谷歌apis上的svg順序。無論哪種方式,我看起來像通過Windows 8 +鉻木材削片機。 – Mark