我需要使用@font-face特性,而我的字体是OTF/TTF格式的,Microsoft浏览器仅支持EOT格式。我尝试使用Microsoft工具WEFT,但它没能正常工作或者我没有理解它的工作原理。有没有其他方法可以将我的字体转换为EOT格式?
我需要使用@font-face特性,而我的字体是OTF/TTF格式的,Microsoft浏览器仅支持EOT格式。我尝试使用Microsoft工具WEFT,但它没能正常工作或者我没有理解它的工作原理。有没有其他方法可以将我的字体转换为EOT格式?
使用Font Squirrel生成器 - 这将不仅生成EOT格式,还会生成SVG和WOFF格式,并且可以一次转换多个字体文件,并将所有内容与相关CSS一起打包到单个存档文件中。
这是一种快速的方法,可以一步生成ttf和eot格式的字体文件,当然,如果你不需要全部的内容,可以挑选出相关部分。请注意,要将otf格式转换为eot格式,您必须进行otf->ttf->eot的转换。
安装fontforge和ttf2eot。它们在MacPorts中可用,其他平台则不确定。
将以下内容保存为名为otf2ttf2eot.sh的脚本文件:
(此脚本已更新以适用于新的fontforge版本;原始脚本在帖子末尾):
#!/bin/sh
otfFont="$1.otf"
ttfFont="$1.ttf"
eotFont="$1.eot"
fontforge -c '
import fontforge
font = fontforge.open("'$otfFont'")
font.generate("'$ttfFont'")
'
ttf2eot "$ttfFont" >"$eotFont"
假设你有一个名为FontName.otf的字体文件,请运行以下命令:
sh otf2ttf2eot.sh FontName
旧版本Fontforge的原始脚本:
#!/bin/sh
# Convert an OTF font into TTF an EOT formats.
otfFont="$1.otf"
ttfFont="$1.ttf"
eotFont="$1.eot"
fontforge -c '
Open("'$otfFont'");
Generate("'$ttfFont'");
Quit(0);'
ttf2eot $ttfFont > $eotFont
mkeot
:sudo apt-get install eot-utils
然后:
mkeot fontfilename.otf > fontfilename.eot
使用http://www.font2web.com/ - 这将生成不仅是EOT,还有SVG和WOFF格式,并且可以同时转换多个字体文件,并在单个存档中提供所有内容以及相关的CSS。
https://everythingfonts.com/font-face
如果你只想进行eot转换,他们也有这个功能。