我在政府网络中工作,其中安全设置由IT管理。我们也限制在所有机器上使用IE9。我为学生开发课程内容中使用的网络应用程序(我们是一所学校),所以我尽量使页面看起来尽可能现代,以免让学生厌倦。我们的机器甚至没有Helvetica,我们教平面设计。
直到最近,我还试图让@ font-face在我为学校制作的页面上工作,从而放弃了希望。那是......直到我发现了Prezi。如果你使用IE9和Internet网站安全设置设置为“中等高”来转到http://prezi.com,你会发现该网站仍然神奇地在fonts.googleapis网站的页面上加载其“PT Sans”字体。当我发现这一点时,我花了整整24小时试图对他们的方法进行逆向工程,无法用我的场外服务器复制它,然后在接下来的24小时内跟踪Prezi的前端开发人员,看看是否他们可以让我知道他们的秘密(嘿,这是政府,我们有空闲时间),当然都无济于事。
看到Prezi想出来的一线希望让我变得像狗一样迷恋这个问题。我在一年的时间里尝试了互联网上的所有技巧和修复。我仍然无法让它发挥作用。
Prezi使用:
<link href='//fonts.googleapis.com/css?family=PT+Sans:400,700&subset=latin-ext,cyrillic-ext' rel='stylesheet' type='text/css'>
从索引页面调用字体,该页面返回:
@font-face {
font-family: 'PT Sans';
font-style: normal;
font-weight: 400;
src: url(http://themes.googleusercontent.com/static/fonts/ptsans/v5/mqvGe0REcQNb_tfYSePALA.eot);
src: local('PT Sans'), local('PTSans-Regular'), url(http://themes.googleusercontent.com/static/fonts/ptsans/v5/mqvGe0REcQNb_tfYSePALA.eot) format('embedded-opentype'), url(http://themes.googleusercontent.com/static/fonts/ptsans/v5/jduSEW07_j4sIG_ERxiq4Q.woff) format('woff');
}
@font-face {
font-family: 'PT Sans';
font-style: normal;
font-weight: 700;
src: url(http://themes.googleusercontent.com/static/fonts/ptsans/v5/1FvfuwkSjtdD3II7O-pVp_esZW2xOQ-xsNqO47m55DA.eot);
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://themes.googleusercontent.com/static/fonts/ptsans/v5/1FvfuwkSjtdD3II7O-pVp_esZW2xOQ-xsNqO47m55DA.eot) format('embedded-opentype'), url(http://themes.googleusercontent.com/static/fonts/ptsans/v5/HXiERDIZdwFzjXlbcMq7XPesZW2xOQ-xsNqO47m55DA.woff) format('woff');
}
然后他们就像使用font-family的常规网络字体一样使用它:'PT Sans'; !!!
我可以在本地html文件上复制整个内容,因为Intranet页面的安全设置低于常规Internet页面。但是我没有被授权将Intranet用于我的应用程序。
Prezi是怎么做到的!他们可以做些什么来让它在他们的网站上工作? Prezi前端开发人员没有回复我的Facebook,Twitter,电子邮件或语音邮件。 Prezi软件显然是专有的,但这是他们网站上的网页,而不是他们的软件产品。
我的IT人员也没有帮助,告诉我我已经知道的事情,比如“中高”安全设置阻止@ font-face,duh(但显然他们没有,因为Prezi做到了)。他们肯定有更大的鱼来炸。作为安抚奶嘴,他们将Chrome和FF推到了我的隔间。他们处理的大多数是“我的屏幕是黑色的”或“我的桌面是什么类型”类型的问题。
因为我的问题对我的环境,建筑和情况如此具体,所以这真是一个黑暗的镜头。我确实花了超过24小时逆向工程Prezi的主页来解决这个问题无济于事。这是浪费时间。
当没有其他网站,甚至http://www.google.com/fonts在我们的机器上显示字体时,他们怎么可能绕过我网络的安全设置呢?
注意:我为这个喋喋不休道歉。已经是凌晨1点了,已经37个小时了。
答案 0 :(得分:0)
我认为基本问题是IE不允许您从其他域下载。要绕过它,您可以在自己的服务器上托管字体。这是基本设置:
从word squirrel创建的方便示例页面顶部复制@ font-face代码并将其放入css文件中。它看起来像这样:
@font-face { font-family: 'PTSans'; src: url('PTSans-regular-webfont.eot'); src: url('PTSans-regular-webfont.eot?#iefix') format('embedded-opentype'), url('PTSans-regular-webfont.woff') format('woff'), url('PTSans-regular-webfont.ttf') format('truetype'), url('PTSans-regular-webfont.svg#PTSansregular') format('svg'); font-weight: normal; font-style: normal; }
上传该批次,您应该设置为去。
注意:这仅适用于“中高”安全设置(及更低)。如果你坚持使用'高',你会遇到Windows默认字体。