Заставьте WebView использовать шрифт, присутствующий на SD-карте - PullRequest
0 голосов
/ 11 апреля 2011

Японский шрифт Android ужасен. Бесплатный шрифт Mincho был бы намного лучше. Многие люди используют наше приложение с открытым исходным кодом для изучения японских слов, поэтому мы хотели бы, чтобы приложение загрузило и использовало этот шрифт.

Существующее бесплатное приложение для Android уже делает это, но я не знаю, как.

Загрузка шрифта на SD-карту не представляет проблемы, но как заставить WebView (или некоторые области внутри WebView) использовать загруженный шрифт вместо шрифта по умолчанию?

Ответы [ 2 ]

0 голосов
/ 20 апреля 2011

Решением было вставить директиву CSS в HTML-код, отправляемый в WebView.Эта директива CSS ссылается на файл шрифта через протокол «file:».

Образец открытого исходного кода и более подробное объяснение смотрите в том, как мы его реализовали:
https://github.com/nicolas-raoul/Anki-Android/commit/6225e524be4a77858e08389624d2f4ae8740261b

0 голосов
/ 11 апреля 2011

WebView используется для загрузки веб-страницы внутри приложения. Возможно, вы ошиблись.Если вы хотите загрузить внешний шрифт в свое приложение, вы можете использовать фрагмент

Typeface tf = Typeface.createFromAsset(getApplicationContext().getAssets()
                    , "fonts/fontname.ttf");

и использовать его для любого текстового представления, чтобы отобразить его в приложении.

...