3

我正在为某人开发一个网站,但他们希望(坚持)标题采用非标准字体。(客户永远是对的。)我有 TrueType (.ttf) 字体,但我如何将它与网站捆绑以便它使用它?

我尝试将其放入 Images 文件夹并尝试使用样式表访问它:

font-family:URL(Images/Arial_Rounded_MT_Bold.ttf)

但这没有用。如何以呈现的方式包含非标准字体?

如果有用,这是一个 ASP.NET 2.0 站点。

4

5 回答 5

5

目前没有标准的方法来做到这一点。您可以使用@font-face,但并非所有浏览器都支持它。正如Lance所提到的,是查找主流浏览器支持参考的好地方。

正在努力使这类事情标准化。Web 开放字体格式(WOFF) 就是这样的努力。看起来这甚至可能在未来被主流浏览器采用。我们将不得不拭目以待。

现在,您能做的最好的事情就是像往常一样引用您的字体,但在此之后添加一个默认(标准)字体。

font-family: "Arial Rounded MT Bold", "Times New Roman", Serif
于 2009-11-05T20:59:05.803 回答
3

你有两个选择:

  1. 创建图像而不是使用文本
  2. 使用sifr将文本转换为 .ttf 字体
于 2009-11-05T20:57:20.800 回答
2

将您的 TrueType 字体转换为 Embedded OpenType 字体(很简单!),这样您就有了两个字体文件:

  • Arial_Rounded_MT_Bold.ttf
  • Arial_Rounded_MT_Bold.eot

然后让你的 CSS 看起来像这样:

@font-face {
  font-family: 'Arial Rounded Bold';
  src: url('Arial_Rounded_MT_Bold.eot');
}
@font-face {
  font-family: 'Arial Rounded Bold';
  src: url('Arial_Rounded_MT_Bold.ttf') format('truetype');
}
h1.title {
  font-family: 'Arial Rounded Bold', serif;
}

多亏了 Internet Explorer,EOT 规范需要放在首位,在一个单独的@font-face块中并且没有format属性。更多信息在这里

享受!

于 2009-11-06T07:58:07.803 回答
2

你有很多选择,没有一个是完美的。Smashing Magazine 有一篇关于丰富字体的精彩文章——其中大部分涉及闪存/图像替换。

http://www.smashingmagazine.com/2009/10/22/rich-typography-on-the-web-techniques-and-tools/

于 2009-11-05T21:02:25.320 回答
1

与网站一起分发字体的主题有相当多的活动,但它通常处于实验阶段,不适用于绝大多数正在使用的浏览器。几年后您可能可以做到这一点,但目前您必须使用图像或sIFR

于 2009-11-05T21:03:37.017 回答