有没有一种方法可以在网站上添加一些自定义字体,而不使用图像,Flash或其他图形?
例如,我在一个婚礼网站上工作,我为这个主题找到了很多漂亮的字体。但是我找不到在服务器上添加那种字体的正确方法。我如何将CSS字体包含到HTML中?如果没有图像,这可能吗?
有没有一种方法可以在网站上添加一些自定义字体,而不使用图像,Flash或其他图形?
例如,我在一个婚礼网站上工作,我为这个主题找到了很多漂亮的字体。但是我找不到在服务器上添加那种字体的正确方法。我如何将CSS字体包含到HTML中?如果没有图像,这可能吗?
当前回答
这可以通过CSS来完成:
<style type="text/css">
@font-face {
font-family: "My Custom Font";
src: url(http://www.example.org/mycustomfont.ttf) format("truetype");
}
p.customfont {
font-family: "My Custom Font", Verdana, Tahoma;
}
</style>
<p class="customfont">Hello world!</p>
如果你使用TrueType-Fonts (TTF), Web Open Font Format (WOFF)或Embedded Opentype (EOT),所有常规浏览器都支持它。
其他回答
请参阅文章《美丽网页排版的50个有用的设计工具》以获得其他方法。
我只用过Cufon。我发现它很可靠,很容易使用,所以我一直用它。
我做了一些研究,找到了动态文本替换(发布于2004-06-15)。
这项技术使用图像,但它似乎是“解放双手”。您编写文本,然后让一些自动脚本在页面上自动执行查找和替换操作。
它有一些限制,但它可能是我所见过的最简单的选择之一(而且更兼容浏览器)。
您可以使用@import url(url)导入web字体。您必须将url替换为字体源(完整的web源)。
《IE中的字体面:让Web字体正常工作》一文中说,它适用于所有三种主要浏览器。
这是我得到的一个工作样本:http://brendanjerwin.com/test_font.html
更多的讨论在嵌入字体中。
如果您使用ASP。NET,它很容易生成基于图像的字体,而不需要在服务器上安装(如添加到已安装的字体库)字体,通过使用:
PrivateFontCollection pfont = new PrivateFontCollection();
pfont.AddFontFile(filename);
FontFamily ff = pfont.Families[0];
然后用这种字体在图形上绘图。