1

是否可以在我的 Android 应用程序中包含可由外部加载的网页的 CSS 使用的 TTF 字体(Arial)?

例如,假设我的网站http://www.some-site.com它有一个 CSS 文件,其中包含以下内容:

@font-face { 
    font-family: "CustomArial"; 
    src: url('Arial.ttf'); 
}

h1 {  
    font-family: 'CustomArial', serif;
}

我还尝试将字体的 url src 设置为以下内容,但它们都不起作用:

  • /mnt/sdcard/Arial.ttf
  • file://mnt/sdcard/Arial.ttf

我知道如果 Arial.ttf 文件与服务器上的 CSS 文件位于同一目录中,则此方法有效,但我想要做的是能够使用我的应用程序 /assets 文件夹中的 Arial.ttf 或某处我已将它放在 SDCard 上。推理是因为 Arial.ttf 文件为 775kb,需要用户在呈现页面之前下载。

这甚至可能吗?我知道如果我加载到 WebView 的 HTML 存在于本地并且我将通过 WebView.loadData() 加载它,我可以完成此操作,但我需要使用 WebView.loadUrl()。

任何想法/帮助都会很棒!

4

1 回答 1

4

1)将字体放在项目的资产文件夹中,而不是放在SD卡上。在您的项目中创建一个名为assets

2)在你的@font-facewith 中引用它src: url('file:///android_asset/Arial.ttf');

于 2012-10-05T19:32:10.013 回答