为什么Firefox拒绝使用ttf字体?

7

我从网上下载了一些ttf字体,这些字体在ftp客户端*目录列表中列出为windows ttf字体。我正在使用Firefox浏览器在Mac OSX平台上嵌入字体,但是在网页控制台中出现了以下错误:

 [17:59:49.201] downloadable font: rejected by sanitizer (font-family: "Cryv2" style:normal weight:normal stretch:normal    src index:0) source: http://localhost/html5/css/fonts/new-fonts-ttf/CryUncial/Cryv2.ttf @ http://localhos/html5/css/embeddedFontDeclarations.css

这是因为Windows ttf字体不同吗?还是该文件已损坏?
如果是这样,是否有一种方法可以从网上筛选可用的字体文件,或将Windows ttf转换为更通用的文件?
我已经将ttf文件转换为eot文件以适应Internet Explorer,但我主要在基于DOM的浏览器上工作,在Mac OSX环境中使用预安装的Apache服务器进行开发、创作和测试,火狐浏览器版本为12.0。
*FTP客户端为Fetch,文本编辑器为BBedit。

http://caniuse.com/#feat=ttf 你可以使用ttf,但它必须是完全无错误的,并且编码为Unicode,因此Wingdings是Firefox中出现问题的一个例子。另外,像http://www.xxx这样带有w的方式来加载以确保正常。 - Daniel Cheung
4个回答

5

http://caniuse.com/#feat=ttf

你可以使用ttf字体,但需要完全没有错误,并且编码为Unicode,因此Wingdings是Firefox中出现问题的示例。
请参考此内容:Wingdings字体系列在Firefox和Opera上似乎无法工作 另外,像这样加载:http://www.example.com/xxx,带有w,以确保没有任何问题。有时,在测试网站时,服务器会表现出奇怪的行为。
以下是一种将ttf转换为整套通用字体的方法:http://www.fontsquirrel.com/tools/webfont-generator。Font Squirrel是一个不错的选择。 ;)

2

我从http://www.dafont.com/de/cry-uncial.font下载了字体,并使用http://www.fontsquirrel.com/tools/webfont-generator进行了检查。

唯一有效的文件是“Cry Uncial Italic - crvy2i.ttf”。 其他两个字体文件已经损坏了。

我猜,你需要重建字体(使用ttf编辑器)或更换字体。


另一个可行的方法是使用从ttf转换而来的字体。

你写道,你已经将字体转换为“eot”。 尝试转换为“woff”和“svg”。

然后按照这个顺序添加网址“eot,woff,svg”。 浏览器将使用第一个好的字体(https://dev59.com/y2Ei5IYBdhLWcg3wlc9u#21155626)。 只需留下损坏的ttf即可。


1

请查看this

相关文本:

如果加载字体文件时内存不足或者字体文件的布局(内容)出现问题,就会出现此错误。这是一种保护机制,用来防止坏的或恶意的字体文件。在about:config中将pref gfx.downloadable_fonts.sanitize设置为false可能可以禁用清理程序,但这样您就没有受到保护了,请自行承担风险。如果您感染了恶意软件,请不要责怪Mozilla。


自从FF-32以后,此选项不再可用。请放心:开发人员总是更了解他们的用户真正需要什么。 - Van Jone

1

Firefox不支持.ttf字体,但可以接受.woff字体。Internet Explorer也是一样,只接受.eot字体。尝试将您的.ttf转换为.woff或查找适用于您字体的.woff版本。

转换方法 - > http://everythingfonts.com/ttf-to-woff


似乎Firefox不支持.ttf,即使它已经添加到版本支持列表中。 - Shashi Kiran

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接