Googleフォントをダウンロードして、それを使用するオフラインサイトを設定する


138

テンプレートがあり、次のようなGoogleフォントへの参照があります。

<link href='http://fonts.googleapis.com/css?family=Open+Sans:400italic,600italic,400,600,300' rel='stylesheet' type='text/css'>

それをダウンロードして、常にオフラインで実行しているページで使用するように設定するにはどうすればよいですか?

回答:


101

Google Fonts- http://www.google.com/fonts/にアクセスし、好きなフォントをコレクションに追加して、ダウンロードボタンを押してください。次に、@ fontfaceを使用して、このフォントをWebページに接続します。ところで、使用しているリンクを開くと、@ fontfaceの使用例が表示されます

http://fonts.googleapis.com/css?family=Open+Sans:400italic,600italic,400,600,300

例として

@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: local('Open Sans Light'), local('OpenSans-Light'), url(http://themes.googleusercontent.com/static/fonts/opensans/v6/DXI1ORHCpsQm3Vp6mXoaTaRDOzjiPcYnFooOUGCOsRk.woff) format('woff');
}

ダウンロードしたフォントファイルのローカルリンクにURLアドレスを変更するだけです。

もっと簡単にできます。

リンクしたファイルをダウンロードするだけです。

http://fonts.googleapis.com/css?family=Open+Sans:400italic,600italic,400,600,300

opensans.cssなどの名前を付けます。

次に、url()のリンクをフォントファイルへのパスに変更します。

次に、例の文字列を次の文字列に置き換えます。

<link href='opensans.css' rel='stylesheet' type='text/css'>

8
私はまだそれを取得できませんでした
user2147954 2013

22
Googleによるサーバーの場合のGoogleフォントとは異なり、このアプローチはWOFF形式のみに依存するため、基本的にはより制限されます。さらに、GoogleはフォントをWOFFではなくTTF形式で配布しています。
Jukka K.Korpela、2013

24
fonts.googleapisは、ブラウザごとに異なる@ font-face宣言を生成することに注意してください。
フセインYağlı

7
Googleはfonts.googleapis.com/からブラウザ固有のCSSファイルを送信するため、これは正しくありません。Chromeでこれを開くと、IEまたは他のブラウザで開くと、別の@ font-faceが表示されます。たとえば、WOFF2フォントは、FirefoxとChromeにのみ送信されます。他のブラウザではサポートされていません(まだ)。caniuse.com/#feat=woff2
Joost van der Laan

4
受け入れステータスに関係なく、この回答は無視してください。Joost van der Laanがここで指摘したように、それは正しくありません。以下の@ marco-kerwitzによるハイスコア回答を参照してください。正しい回答としてマークする必要があります。
鑑定士-ポールW

325

グーグルウェブフォントヘルパーをチェックしてください

それはあなたがグーグルのすべてのウェブフォントをダウンロードすることを可能にし、実装のためのCSSコードを提案します。このツールを使用すると、手間をかけずに、すべてのフォーマットを一度にダウンロードすることもできます。

Googleがウェブフォントをホストしている場所を知りたいと思ったことはありませんか?このサービスは、フォントバリアントのすべての.eot、.woff、.woff2、.svg、.ttfファイルをgoogleから直接ダウンロードする場合に便利です(通常、ユーザーエージェントが最適なフォーマットを決定します)。

また、Githubページもご覧ください


20
そもそもなぜグーグルがこれをしなかったのかしら?+1
tftd

3
これはうまく機能します。ローカルファイルからリンクするときに、それぞれのコンテンツタイプを宣言するようにしてくださいContent-type: text/css; charset: UTF-8
Clain Dsilva

CSS / SASSインポートをパックするwebpackまたはその他のツールを使用している場合、このアプローチが最適です。 この質問では、プロセスについてもう少し詳しく説明します。
ペース

ヒントありがとうございました。私の日を救った!
evnica

1
one-liner、ターゲットディレクトリで実行:curl -o f.zip "https://google-webfonts-helper.herokuapp.com/api/fonts/roboto?download=zip&subsets=latin,latin-ext&variants=regular,700" && unzip f.zip && rm f.zip
smnbbrv 2018年

43

この(1つのフォントのため)を達成するためのステップバイステップの方法を発見した:
2013年9月- 9のように

  1. http://www.google.com/fontsでフォントを選択してください
  2. [コレクションに追加]の青いボタンを使用して、必要なものをコレクションに追加します
  3. [コレクションから削除]ボタンの近くにある[すべてのスタイルを表示]ボタンをクリックし、「太字」など、必要になる可能性のある他のスタイルを選択していることを確認します...
  4. ページの右下にある[使用]タブボタンをクリックします
  5. 下向き矢印の画像が表示されている上部のダウンロードボタンをクリックします。
  6. 表示されるポップアップメッセージの「zipファイル」をクリックします
  7. ポップアップの「閉じる」ボタンをクリックします
  8. 3つのタブ「標準| @インポート| JavaScript」が表示されるまで、ページをゆっくりスクロールします
  9. 「@import」タブをクリックします
  10. との間'url('でURLを選択してコピーします')'
  11. 新しいタブのアドレスバーにコピーしてそこに移動します
  12. 「ファイル>名前を付けてページを保存...」を実行し、「desiredfontname.css」という名前を付けます(適宜置き換えます)
  13. ダウンロードしたフォント.zipファイルを解凍します(.ttfを抽出する必要があります)
  14. " http://ttf2woff.com/にアクセスします」に、zipから抽出された.ttfを.woffに変換します
  15. 編集desiredfontname.cssとの間で、[その中に任意のURLを交換'url('し、')' ]あなたはttf2woff.comに乗っ対応する変換.woffファイルを使用して、書き込むパスは、サーバーのdoc_rootに従う必要があります
  16. ファイルを保存して最終的な場所に移動し、対応する<link/>CSSタグを記述して、これらをHTMLページにインポートします。
  17. 今からfont-family、スタイルでこのフォントを名前で参照してください

それでおしまい。原因私は同じ問題を抱えていて、上の解決策はうまくいきませんでした。


1
これらの手順は完全に機能しました。まだwoffファイル拡張子を使用していない人のためにそれを確実に追加し、そのMIMEタイプをweb.configに追加したいだけです。
Coding101 2014年

1
コンバーターは必要ありません。マルコ・カーヴィッツの答えを見てください。
Herr_Schwabullek

25

他の答えは間違っていませんが、これが最速の方法であることがわかりました。

  1. Googleフォントからzipファイルをダウンロードして解凍します。
  2. フォントファイルを3つずつhttp://www.fontsquirrel.com/tools/webfont-generatorにアップロードします。
  3. 結果をダウンロードします。

結果には、すべてのフォント形式(woff、svg、ttf、eot)が含まれます。

さらに追加のボーナスとして、CSSファイルも生成されます!


読みながら考えなくていた答えの+1。以前にアップロードする必要がなく、直接Googleフォントコンバーターを見つけるのは素晴らしいことです。ユーティリティの例:オフラインのウェブサイト管理を行う場合。
Meetai.com 2014

これは、さまざまなフォント形式を生成するのに非常に便利です。しかし、生成されたcssはあまりスマートではないことに注意してください。フォントの太さが異なる1つのフォントファミリーではなく、別々のフォントファミリーとして同じフォントの2つ以上のスタイルが生成されます。しかし、CSSで自分で修正するのはかなり簡単です。
Ken Sung

2
コンバーターは必要ありません。Marco Kerwitzの回答を見てください
Herr_Schwabullek

一度に10フォントをアップロードできたため、3フォントの制限が解除または増加したようです
Adrian Hedley

4

3つのステップ:

  1. カスタムフォントをGooleフォントでダウンロードし、.cssファイルをダウンロードします。例:http ://fonts.googleapis.com/css?family=Open+Sans:400italic,600italic,400,600,300をダウンロードし 、example.cssとして保存します。
  2. ダウンロードしたファイル(example.css)を開きます。次に、すべてのfont-faceファイルをダウンロードして、fontsディレクトリに保存する必要があります。
  3. example.cssを編集:すべてのfont-faceファイルを.cssダウンロードに置き換えます

例:

@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v14/xjAJXh38I15wypJXxuGMBvZraR2Tg8w2lzm7kLNL0-w.woff2) format('woff2');
  unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
}

src:-> urlを見てください。http://fonts.gstatic.com/s/opensans/v14/xjAJXh38I15wypJXxuGMBvZraR2Tg8w2lzm7kLNL0-w.woff2をダウンロードして、fontsディレクトリに保存します。その後、ダウンロードしたすべてのファイルのURLを変更します。今では次のようになります

@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: local('Open Sans Italic'), local('OpenSans-Italic'), url(fonts/xjAJXh38I15wypJXxuGMBvZraR2Tg8w2lzm7kLNL0-w.woff2) format('woff2');
  unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
}

** .cssファイルを含むすべてのフォントをダウンロードしてください


4

パッケージの依存関係を明示的に宣言するか、ダウンロードを自動化する場合は、ノードパッケージを追加して、Googleフォントを取得し、ローカルで提供できます。

NPM - GoogleのフォントのダウンロードS

書体プロジェクトは、オープンソースの書体についてNPMパッケージを作成します。

各パッケージには、オープンソースの書体をセルフホストするために必要なすべてのfonsとcssが同梱されています。
すべてのGoogleフォントと、他のオープンソースフォントの数は増えていますが、増え続けています。

ただ、NPMを検索するためのような利用可能なフォントブラウズする書体-roboto書体・オープンSANをして、次のようにインストールします。typeface-<typefacename>

$ npm install typeface-roboto    --save 
$ npm install typeface-open-sans --save 
$ npm install material-icons     --save 

NPM - Googleのフォントダウンロード- ERS

より一般的な使用例として、2つのステップでフォントを配信するnpmパッケージがいくつかあります。最初にパッケージを取得し、次に、パッケージに含めるフォント名とオプションを指定します。

オプションの一部を次に示します。

さらに読む


3

基本的に、プロジェクトにフォントを含めます。

@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: normal;
src: url('path/to/OpenSans.eot');
src: local('Open Sans'), local('OpenSans'), url('path/to/OpenSans.ttf') format('truetype');

記事へのデッドリンク
TecHunter 2017年

ダウンロードに.eotファイルが含まれていない
exe

2

Google Fontsを使用する場合、ワークフローは「選択」、「カスタマイズ」、「埋め込み」の3つのステップに分かれます。よく見ると、[使用]ページの右端に小さな矢印があり、現在コレクションにあるフォントをダウンロードできます。

その後、システムにフォントがインストールされたら、font-familyCSSディレクティブを使用して他の通常のフォントと同じように使用するだけです。


0

duydbの回答に従って、このプロセスを自動化する以下のpythonコードを生成しました。

import requests

with open("example.css", "r") as f:
    text = f.read()
    urls = re.findall(r'(https?://[^\)]+)', text)

for url in urls:
    filename = url.split("/")[-1]
    r = requests.get(url)
    with open("./fonts/" + filename, "wb") as f: 
        f.write(r.content)
    text = text.replace(url, "/fonts/" + filename)

with open("example.css", "w") as f:
        f.write(text)

これがコピー&ペーストの死の一部に役立つことを願っています。


-1

フォントをダウンロードしてローカルで参照する必要があります。

CSS投稿したリンクからをダウンロードし、すべてのWOFFファイルをダウンロードして、(必要に応じて)に変換しますTTF

次に、CSS投稿したリンクから、フォントをローカルに含めるように変更します。

から

url(http://themes.googleusercontent.com/static/fonts/opensans/v6/
DXI1ORHCpsQm3Vp6mXoaTXhCUOGz7vYGh680lGh-uXM.woff)

url(/path/to/font/font.woff)

出来上がり!あなたがする必要があるいくつかがあるかもしれませんが、上記は基本です。この記事ではもう少し説明します。


同じでしたが、他のページが歪んでいます。:<link href = "./ css / font.woff" rel = 'stylesheet' type = 'text / css'>
user2147954

あなたのフォントファイルは呼ばれていfont.woffますか?ファイルがロードされていることを確認しましたか?
テリー

@テリー私はあなたが何を意味するのかわかりません-それはファイルの架空の名前でした。
Mattios550 2013

-3

フォントをダウンロードしてフォルダに抽出するだけです。次に、そのフォントをリンクします。以下のコードが適切に機能しました。

body { 
  color: #000; 
  font-family:'Open Sans';
  src:url(../../font/Open_Sans/OpenSans-Light.ttf); 
}
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.