【发布时间】:2013-10-29 23:28:43
【问题描述】:
我有自定义字体文件。我如何将它添加到 grails 项目中。我可以使用 ${resource(dir: , file:'')} 来添加它吗?
【问题讨论】:
标签: grails fonts grails-controller
我有自定义字体文件。我如何将它添加到 grails 项目中。我可以使用 ${resource(dir: , file:'')} 来添加它吗?
【问题讨论】:
标签: grails fonts grails-controller
此答案不仅限于 Grails,因为您使用 CSS 来完成。 There's this related question in SO,说明你需要use @font-face。
您可以使用相对路径,让 Grails 资源自行处理:
将您的字体放入 web-app/fonts(创建目录)
添加到您的 css(考虑到 Delicious-Roman.ttf 文件,替换为您的):
@font-face { font-family: Delicious; src: url('../fonts/Delicious-Roman.ttf'); }
@font-face { font-family: Delicious; font-weight: bold; src: url('../Delicious-Bold.ttf'); }
【讨论】:
从任何网站下载您的字体。 到webFont Generator。 它将生成一个 zip 文件。在其中找到您的 .css 文件并在样式标记中复制并粘贴代码到您的 Web 中。还将所有文件粘贴到同一目录中。它将运行所有浏览器。
@font-face {
font-family: 'Philosopher';
src: url('WebRoot/fonts/philosopher-regular.eot');
src: url('WebRoot/fonts/philosopher-regular.eot?#iefix') format('embedded-opentype'),
url('WebRoot/fonts/philosopher-regular.woff') format('woff'),
url('WebRoot/fonts/philosopher-regular.ttf') format('truetype');
font-weight: normal;
font-style: normal;
}
body{
font-size: 13px;
font-family: "Philosopher";
}
此代码 sn-p 适用于 philospher 字体。您可以使用基于此示例的任何字体。 享受吧。
【讨论】:
将其放入web-app 目录。
您可以创建类似 web-app/fonts 的目录并将其引用为 /fonts/yourfont.ttf 或 ${resource(dir: 'fonts', file: yourfont.ttf}
请注意,第一种方法仅在您在根上下文中运行应用程序时才有效。
【讨论】: