Quiero cambiar la fuente WebView. Hay 2 archivos en la carpeta "activos". Ellos son:Cambiar fuente de WebView utilizando CSS; archivo de fuente en la carpeta de activos. (problema)
activos/fonts/DejaVuSans.ttf y
activos/css/result.css
Busqué algunas respuestas sobre StackOverflow y encontrar una solución, pero no funciona. El result.css carga DejaVuSans.ttf utilizando la directiva @ font-face. Luego se incluye en el < enlace> etiqueta de datos que se pasa a WebView :: loadDataWithBaseURL (El código está debajo). El problema es que los estilos CSS funcionan (el texto es rojo) pero la fuente no es. Aparecen caracteres cuadrados cuando muestro símbolos fonéticos (/ 'pə: sn /).
String resultText = "<html><head>";
resultText += "<link href=\"css/result.css\"" + " rel=\"stylesheet\" type=\"text/css\" />";
resultText += "<style>" + "@font-face { font-family: \"DejaVuSans\"; " + "" +
"src: url('file:///android_asset/fonts/DejaVuSans.ttf'); }</style>";
resultText += "</head>";
resultText += "<body><p>" + text + "</p>" + "</body></html>";
resultView.loadDataWithBaseURL("file:///android_asset/", resultText, "text/html", "utf-8", null);
result.css:
@font-face {
font-family: "DejaVuSans";
/*src: url('fonts/DejaVuSans.ttf'); also not work*/
src: url('file:///android_asset/fonts/DejaVuSans.ttf');
}
body {
color: red;
}
El System.out.println (resultText) es:
<html><head><link href="css/result.css" rel="stylesheet" type="text/css" /><style>@font-face { font-family: "DejaVuSans"; src: url('file:///android_asset/fonts/DejaVuSans.ttf'); }</style></head><body><p>person /'pə:sn/</p></body></html>
Estoy trabajando en Windows. ame para saber la "familia de fuentes"? – MobiDev
Tengo el mismo problema pero la fuente todavía no se carga. Escribo el texto completo y el tipo de letra en un archivo html que se carga a la vista web. – Kenji