Freemarker:使用外部字体
Posted
技术标签:
【中文标题】Freemarker:使用外部字体【英文标题】:Freemarker: use external font 【发布时间】:2014-10-17 16:39:33 【问题描述】:是否可以在 Freemarker 中使用外部字体?
我试图将<style>
属性放在我的模板中以使用@font-face
规则,但它不起作用,电子邮件没有指定字体。
模板内容如下:
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
@font-face font-family: Cool; src: url('font.ttf');
body
font-family: Cool
</style>
</head>
<body>
<h1>Email text</h1>
<small>Very cool font</small>
</body>
</html>
然后我尝试在@font-face 规则src: url('http://myservername/font.ttf')
中指定非相对网址,但电子邮件也使用常用字体。
我尝试将外部样式表包含在模板中,如下所示:
...
<head>
<link rel="stylesheet" type="text/css" href="http://myservername/style.css" />
</head>
...
style.css
的内容是:
@font-face font-family: Cool; src: url('http://myservername/font.ttf');
body
font-family: Cool
当我在浏览器中打开模板时,一切正常:
但是当电子邮件发送给用户时 - 浏览器会使用常规字体显示它。
你能帮忙找出问题吗?
【问题讨论】:
这不是 FreeMarker 问题,而是 HTML+CSS+电子邮件问题。另请注意,并非所有电子邮件客户端都支持自定义字体,或自动从外部 URL 加载资源。 【参考方案1】:真的,问题出在电子邮件客户端,它不支持带有style
标签的head
部分。
关于这个话题的好文章在这里:http://css-tricks.com/using-css-in-html-emails-the-real-story/
【讨论】:
以上是关于Freemarker:使用外部字体的主要内容,如果未能解决你的问题,请参考以下文章
Spring Boot从入门到进阶教程系列 -- 集成Freemarker配置