我有html内容(合并波斯语和英文文本)和附加的css,所有css样式都正确应用但字体。
css有这样的字体:
@font-face{
font-family: 'BYekan';
font-weight: normal;
font-style: normal;
src: url(../Fonts/BYekan.ttf);
}
该字体仅适用于英文文本,而不适用于波斯语。该字体是标准的 ttf 波斯语字体(BYekan.ttf),所以没有错误。
我google了很多,几乎每个人都说这是WebView
android>中的一个错误。 3.0,问题仍然存在于android 4中。
https://code.google.com/p/android/issues/detail?id=38536 https://groups.google.com/forum/#!topic/persian-computing/4Fm7JfiOkJk
我找到的唯一解决方法是使用 svg 字体,但对我不起作用。 Custom font for webview
那我怎么解决这个问题呢?
note1 :这个问题很多问了很多,像这样:
Persian @font-face doesn't work in Chrome, Bug or not?
但这是一个老问题,给定的建议不再适用(至少对我而言)。
note2 :当我正确应用Chrome桌面浏览器字体打开页面时。
答案 0 :(得分:1)
我找到了解决方法
尝试这些字体
@font-face {
font-family: 'yekan’;
src:url('fonts/yekan.eot?#’) format(‘eot’),
url('fonts/yekan.woff') format('woff'),
url(‘fonts/yekan.ttf’) format(‘truetype’);
}
IMO使用SVG font获取波斯语
答案 1 :(得分:0)
我已在您的问题中转换了上述字体,并将其上传到以下互联网地址:
此外,您必须使用以下样式行:
@font-face {
font-family: 'BYekan';
src: url('../Fonts/byekan-webfont.eot');
src: url('../Fonts/byekan-webfont.ttf') format('truetype'), url('../Fonts/byekan-webfont.eot?#iefix') format('embedded-opentype'), url('../Fonts/byekan-webfont.woff') format('woff'), url('../Fonts/byekan-webfont.svg#BYekan') format('svg');
font-weight: normal;
font-style: normal;
}
并且,您应该在 .htaccess 文件中添加以下行:
AddType application/vnd.ms-fontobject .eot
AddType font/ttf .ttf
AddType font/otf .otf
AddType application/x-font-woff .woff