Fazendo download de uma fonte do Google e configurando um site offline que a usa

138

Eu tenho um modelo e ele tem uma referência a uma fonte do Google como esta:

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

Como posso baixá-lo e configurá-lo para uso em minhas páginas que ficam off-line o tempo todo?

user2147954
fonte

Respostas:

101

Basta acessar Google Fonts - http://www.google.com/fonts/ , adicionar a fonte que você gosta à sua coleção e pressionar o botão de download. Depois, basta usar o @fontface para conectar essa fonte à sua página da web. Aliás, se você abrir o link que está usando, verá um exemplo de como usar @fontface

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

Por exemplo

@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');
}

Basta alterar o endereço da URL para o link local no arquivo de fonte que você baixou.

Você pode fazer isso ainda mais fácil.

Basta baixar o arquivo, você vinculou:

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

Nomeie como opensans.css ou mais.

Em seguida, basta alterar os links em url () para o seu caminho para os arquivos de fonte.

E substitua sua sequência de exemplo por:

<link href='opensans.css' rel='stylesheet' type='text/css'>
Dmitriy Butenko
fonte
8
Eu ainda não consegui-lo
user2147954
22
Ao contrário das fontes do Google quando servidor do Google, essa abordagem depende apenas do formato WOFF e, portanto, é essencialmente mais limitada. Além disso, o Google distribui suas fontes no formato TTF, não no WOFF.
Jukka K. Korpela
24
Cuidado, o fonts.googleapis gera diferentes declarações @ font-face para diferentes navegadores.
Hüseyin Yağlı
7
Isso NÃO está correto, porque o Google envia um arquivo CSS específico do navegador a partir de fonts.googleapis.com/…. Se você abrir isso com o Chrome, terá uma @ font-face diferente ao abri-lo no IE ou em qualquer outro navegador. As fontes WOFF2, por exemplo, serão enviadas apenas para o Firefox e Chrome, pois outros navegadores ainda não as suportam. caniuse.com/#feat=woff2
Joost van der Laan
4
Ignore esta resposta, independentemente do status aceito. Está incorreto como Joost van der Laan apontou aqui. Veja a resposta mais alta de @ marco-kerwitz abaixo, que deve ser marcada como a resposta correta.
Appurist - Paul W
325

Confira o assistente do google webfonts

Permite baixar todas as fontes da web do Google e sugere código css para a implementação. Essa ferramenta também permite que você baixe todos os formatos de uma só vez sem problemas.

Sempre quis saber onde o Google hospeda suas faculdades? Esse serviço pode ser útil se você deseja fazer o download de todos os arquivos .eot, .woff, .woff2, .svg, .ttf de uma variante de fonte diretamente do google (normalmente o seu User-Agent determinaria o melhor formato).

Veja também a página do Github .

Marco Kerwitz
fonte
20
Eu só me pergunto por que o Google não fez isso em primeiro lugar? +1
tftd 14/05
3
Isso funciona muito bem, Certifique-se de que você declare o respectivo tipo de conteúdo ao ligar a partir de um arquivo localContent-type: text/css; charset: UTF-8
Clain Dsilva
Se você estiver usando o webpack ou alguma outra ferramenta que inclua importações de CSS / SASS, essa abordagem é a melhor. Esta pergunta descreve o processo com mais detalhes.
Pace
Muito obrigado pela dica. Salvou o meu dia!
evnica
1
one-liner , execute no diretório de destino: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 23/11
43

Encontrei uma maneira passo a passo de conseguir isso (para uma fonte):
(a partir de 9 de setembro de 2013 )

  1. Escolha sua fonte em http://www.google.com/fonts
  2. Adicione o desejado à sua coleção usando o botão azul "Adicionar à coleção"
  3. Clique no botão "Ver todos os estilos" ao lado de "Remover da coleção" e verifique se você selecionou outros estilos que também podem ser necessários, como 'negrito' ...
  4. Clique no botão "Usar" na parte inferior direita da página
  5. Clique no botão de download na parte superior com uma imagem de seta para baixo
  6. Clique em "arquivo zip" na mensagem pop-up exibida
  7. Clique no botão "Fechar" no pop-up
  8. Role lentamente a página até ver as três guias "Standrd | @import | Javascript"
  9. Clique na guia "@import"
  10. Selecione e copie o URL entre 'url('e')'
  11. Copie-o na barra de endereço em uma nova guia e vá para lá
  12. Faça "Arquivo> Salvar página como ..." e nomeie-o como "nome da fonte desejado.css" (substitua de acordo)
  13. Descompacte o arquivo .zip de fontes baixado (o arquivo .ttf deve ser extraído)
  14. Vá para " http://ttf2woff.com/ " e converta qualquer .ttf extraído do zip para .woff
  15. Edite desiredfontname.csse substitua qualquer URL dentro [entre 'url('e ')'] pelo arquivo .woff convertido correspondente que você obteve no ttf2woff.com; o caminho que você escreve deve estar de acordo com o servidor doc_root
  16. Salve o arquivo e mova-o em seu lugar final e escreva a <link/>tag CSS correspondente para importá-las em sua página HTML
  17. A partir de agora, consulte esta fonte pelo font-familynome em seus estilos

É isso aí. Porque eu tive o mesmo problema e a solução no topo não funcionou para mim.

1111161171159459134
fonte
1
Esses passos funcionaram perfeitamente. Eu só quero adicionar isso para aqueles que ainda não usam extensões de arquivo woff, para ter certeza e adicionar esse tipo de tipo no web.config.
Coding101
1
Não é necessário nenhum conversor. Veja a resposta de Marco Kerwitz.
Herr_Schwabullek
25

As outras respostas não estão erradas, mas achei o caminho mais rápido.

  1. Baixe o arquivo zip das fontes do Google e descompacte-o.
  2. Faça o upload dos arquivos de fonte 3 de cada vez para http://www.fontsquirrel.com/tools/webfont-generator
  3. Faça o download dos resultados.

Os resultados contêm todos os formatos de fonte: woff, svg, ttf, eot .

E, como um bônus adicional, eles geram o arquivo css para você também!

sym3tri
fonte
+1 para uma resposta na qual não precisei pensar durante a leitura. Seria incrível encontrar um conversor direto de fontes do Google sem precisar enviá-los anteriormente. Utilitário de exemplo: ao fazer o gerenciamento de sites offline.
Meetai.com 14/08/14
Isso é muito conveniente para gerar os diferentes formatos de fonte para você. Mas qualquer pessoa que o use esteja ciente de que o css gerado não é muito inteligente; ele gerará dois (ou mais) estilos da mesma fonte como famílias de fontes separadas, em vez de uma família de fontes com diferentes pesos de fonte. Mas é muito fácil corrigi-lo no CSS.
Ken Sung
2
Não é necessário nenhum conversor. Veja a resposta de Marco Kerwitz
Herr_Schwabullek
Eu era capaz de fazer upload de 10 fontes de uma só vez, por isso parece limitação de 3 fontes foi removido ou aumento
Adrian Hedley
4

3 passos:

  1. Faça o download da sua fonte personalizada no Goole Fonts e faça o download do arquivo .css ex: faça o download de http://fonts.googleapis.com/css?family=Open+Sans:400italic.600italic.400.600.300 e salve como example.css
  2. Abra o arquivo que você baixa ( exemplo.css ). Agora você deve baixar todos os arquivos de fonte e salvá-los no diretório de fontes .
  3. Edite example.css : substitua todos os arquivos de fonte para o seu download .css

Ex:

@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;
}

Veja src: -> url. Faça o download de http://fonts.gstatic.com/s/opensans/v14/xjAJXh38I15wypJXxuGMBvZraR2Tg8w2lzm7kLNL0-w.woff2 e salve no diretório de fontes . Depois disso, altere o URL para todos os arquivos baixados. Agora vai parecer

@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;
}

** O download de todas as fontes contém arquivo .css Espero que ajude

duydb
fonte
4

Se você deseja declarar explicitamente as dependências do seu pacote ou automatizar o download, pode adicionar um pacote do nó para extrair fontes do Google e servir localmente.

npm - Google Font Download s

O projeto de fontes cria pacotes NPM para fontes abertas:

Cada pacote é enviado com todos os fons e css necessários para auto-hospedar um tipo de fonte de código aberto.
Todas as fontes do Google foram adicionadas, além de uma lista pequena, mas crescente, de outras fontes de código aberto.

Basta procurar no npm para procurar as fontes disponíveis, como typeface-roboto ou typeface-open-sans e instalar assim:typeface-<typefacename>

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

npm - Fontes do Google Download- ers

Para o caso de uso mais genérico, existem vários pacotes npm que entregam fontes em duas etapas, primeiro obtendo o pacote e depois apontando-o para o nome da fonte e as opções que você deseja incluir.

Aqui estão algumas das opções:

Leitura adicional :

KyleMit
fonte
3

Essencialmente, você está incluindo a fonte no seu projeto.

@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');
davidb
fonte
link morto para o artigo
TecHunter 10/11
O download não inclui o arquivo .eot
exe
2

Ao usar o Google Fonts, seu fluxo de trabalho é dividido em 3 etapas: "Selecionar", "Personalizar", "Incorporar". Se você observar atentamente, no lado direito da página "Usar", há uma pequena seta que permite baixar a fonte atualmente em sua coleção.

Depois disso, e depois que a fonte estiver instalada no seu sistema, você precisará usá-la como qualquer outra fonte comum usando a font-familydiretiva CSS.

Pierre-Adrien Buisson
fonte
0

Eu segui a resposta do duydb para produzir o código python abaixo que automatiza esse processo.

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)

Espero que isso ajude com parte da morte de copiar e colar.

Wytamma Wirth
fonte
-1

Você precisa baixar a fonte e referenciá-la localmente.

Faça o download CSSdo link que você postou, faça o download de todos os WOFFarquivos e (se necessário) os converta em TTF.

Em seguida, altere o CSSlink publicado para incluir as fontes localmente.

De

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

Para

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

Voila! Pode haver mais que você precisa fazer, mas o acima é o básico. Este artigo explica um pouco melhor.

Mattios550
fonte
Fez o mesmo, mas outras páginas estão ficando distorcidas. : <link href = "./ css / font.woff" rel = 'stylesheet' type = 'text / css'>
user2147954
O seu arquivo de fonte é chamado font.woff? Você verificou se o arquivo está carregado?
Terry
@ Terry Não sei ao certo o que você quer dizer - esse era um nome fictício para o arquivo.
precisa saber é o seguinte
-3

basta baixar a fonte e extraí-la em uma pasta. depois vincule essa fonte. o código abaixo funcionou corretamente para mim.

body { 
  color: #000; 
  font-family:'Open Sans';
  src:url(../../font/Open_Sans/OpenSans-Light.ttf); 
}
Ashish waman
fonte