我有一个模板,其中包含对Google字体的引用,类似于以下内容:
<link href='http://fonts.googleapis.com/css?family=Open+Sans:400italic,600italic,400,600,300' rel='stylesheet' type='text/css'>
我该如何下载并安装它,以便在我的网页中离线运行时使用?
我有一个模板,其中包含对Google字体的引用,类似于以下内容:
<link href='http://fonts.googleapis.com/css?family=Open+Sans:400italic,600italic,400,600,300' rel='stylesheet' type='text/css'>
我该如何下载并安装它,以便在我的网页中离线运行时使用?
它可以让你下载谷歌的每一种Web字体,并提供实现的CSS代码建议。 此工具还允许你一次简单地下载所有格式,避免了繁琐的麻烦。
曾经想过要知道谷歌在哪里托管他们的Web字体吗?如果想直接从Google下载一个字体变体的所有.eot、.woff、.woff2、.svg、.ttf文件,则此服务可能会很有用(通常您的User-Agent会确定最佳格式)。
还可以查看他们的Github页面。
只需前往Google字体 - http://www.google.com/fonts/,将您喜欢的字体添加到收藏夹,然后按下载按钮。然后只需使用@fontface将此字体连接到您的网页即可。 顺便说一下,如果您打开所使用的链接,您将看到使用@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'>
curl "https://YOUR GOOGLEAPIS URL HERE" >> fonts.css
并在 fonts.css
文件中获取您的结果。虽然不确定您是否仍然会以此方式丢失字体,但至少它是独立的。(当然,您仍然需要手动下载使用的外部字体文件) - George Dimitriadis找到了一种逐步实现此目标的方法(适用于1个字体):
(截至2013年9月9日)
- 在http://www.google.com/fonts上选择您的字体
- 使用“添加到收藏夹”蓝色按钮将所需字体添加到您的收藏夹中
- 点击“从收藏夹中删除”按钮附近的“查看所有样式”按钮,确保您已选择其他您可能需要的样式,如“粗体”...
- 点击页面右下角的“使用”选项卡按钮
- 在页面顶部点击带有向下箭头图像的下载按钮
- 在弹出消息中点击“zip文件”
- 点击弹出窗口上的“关闭”按钮
- 缓慢滚动页面,直到看到3个选项卡“Standrd | @import | Javascript”
- 点击“@import”选项卡
- 选择并复制介于
'url('
和')'
之间的URL- 在新标签页的地址栏中复制并转到该网址
- 执行“文件 > 另存为...”,并将其命名为“desiredfontname.css”(相应更改)
- 解压缩您下载的字体.zip文件(应该会提取.tff)
- 前往http://ttf2woff.com/,将从zip中提取的任何.tff转换为.woff格式
- 编辑
desiredfontname.css
,用ttf2woff.com得到对应的转换过的.woff文件替换其中的任何URL [介于'url('
和')'
之间];您写的路径应根据服务器doc_root设置- 保存该文件,并将其移动到最终位置并编写相应的
<link/>
CSS标签,以在HTML页面中导入这些字体- 从现在开始,在你的样式中使用
font-family
名称来引用这种字体
就是这样。因为我也遇到了同样的问题,而上面的解决方案对我没有起作用。
其他回答并没有错,但我发现这是最快的方式。
结果包含所有字体格式:woff、svg、ttf、eot。
作为额外的奖励,他们还为您生成css文件!
如果您想明确声明软件包依赖关系或自动下载,您可以添加一个npm软件包以拉取谷歌字体并在本地提供服务。
Fontsource 允许您:
在整洁的NPM软件包中自托管开源字体。
您可以搜索npm以浏览可用字体,例如{{link2:scope:fontsource <typefacename>
}},然后像这样安装@fontsource/roboto或@fontsource/open-sans:
$ npm install @fontsource/roboto --save
$ npm install @fontsource/open-sans --save
对于更通用的使用情况,有几个npm包可以通过两个步骤提供字体,首先安装库,然后指向您想要包含的字体名称和选项。
三个步骤:
例如:
@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;
}
@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 文件的所有字体 希望这能帮助您
@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');
font-family
CSS指令像使用任何其他常规字体一样即可。1) 在 Google Fonts 网站中选择你需要的字体和样式。
2) 然后会得到一个链接标签,在链接旁边点击导入(import)。
复制链接中 URL(' here ') 中所包含的链接并将其粘贴到浏览器地址栏中搜索。
然后你会得到类似于这样的东西:
接着下载并保存在你的项目文件中!
7) 将其包含在你的 HTML 链接标签中,或者导入到你的 CSS 文件中 (https://istack.dev59.com/NvJ60.webp) (https://istack.dev59.com/XwK0l.webp)
8) 最后使用 Google Fonts 中提到的字体族(ton family)。
我使用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)
Content-type: text/css; charset: UTF-8
。 - Clain Dsilvacurl -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
,它会帮您下载并解压 Google 字体的Roboto
字形(包括普通和粗体字形),并删除原始的 zip 文件。 - smnbbrv