2016-06-03 13 views
0

Ich möchte font-face in mein WebView einfügen, um einige spezielle Schriftarten auf verschiedenen WebSites anzuzeigen. Zum Beispiel in Wikipedia möchte ich ein wenig Code für die Änderung der Schriftart in der HTML, wenn dies getan wird, zeige ich die Seite und die Schriftart sind nicht Century Gothic wie im HTML-Code. Wenn ich versuche, Google Chrome funktioniert nicht auch. Wenn ich versuche, mit:Verwenden von Font-face in Android WebView

webView.loadDataWithBaseURL(...) 

arbeiten, um es, wenn ich auf Header setzen:

"<link rel='stylesheet' type='text/css' href='file:///android_asset/style.css'/>" 

In meinem style.css:

@font-face { 
    font-family: Andika; 
    src: url('fonts/Andika.ttf'); 
} 
@font-face { 
    font-family: Calibri; 
    src: url('fonts/Calibri.ttf'); 
} 
@font-face { 
    font-family: Century Gothic; 
    src: url('fonts/CenturyGothic.ttf'); 
} 
@font-face { 
    font-family: Comic Sans MS; 
    src: url('fonts/ComicSansMS.ttf'); 
} 

@font-face { 
    font-family: Lexia; 
    src: url('fonts/Lexia.ttf'); 
} 
@font-face { 
    font-family: Lucida Sans Unicode; 
    src: url('fonts/LucidaSansUnicode.ttf'); 
} 
@font-face { 
    font-family: Tahoma; 
    src: url('fonts/Tahoma.ttf'); 
} 
@font-face { 
    font-family: Tiresias; 
    src: url('fonts/Tiresias.ttf'); 
} 
@font-face { 
    font-family: Trebuchet MS; 
    src: url('fonts/TrebuchetMS.ttf'); 
} 
@font-face { 
    font-family: Verdana; 
    src: url('fonts/Verdana.ttf'); 
} 

Aber es ist auf lokale Daten.

Ich möchte das mit externen Seite wie Wikipedia machen.

Wenn ich injizieren den Link auf der Wikipedia-HTML-Seite ich diese Fehlermeldung haben:

Not allowed to load local resource: file:///android_asset/ 

Und wenn ich direkt Feld der @font-face in Stil setzen habe ich den gleichen Fehler.

SomeOne haben eine Idee, diesen Fehler zu beheben?

Bitte!

Danke

Antwort

0

Sie so etwas wie diesen Client HTML von Wikipedia Seite es

  • Verwenden JSoup zu analysieren zu holen jede HTTP
    1. Verwenden

      tun können, und Ihr <link... Tag im Inneren einsetzen
    2. Laden Sie es mit loadDataWithBaseURL in Ihrem WebView
  • +0

    Ich versuche das, aber ich verliere alle Bilder und Links ... aber es funktioniert, aber die Seite ist nicht funktionsfähig ... –

    +0

    Oh, das passiert, weil Sie die Basis-URL ändern, wenn Sie Ihre Schriften anderswo hosten können, dann könnte dies funktionieren . – Sourabh

    +0

    Ich versuche, die style.css und Schriftarten auf meiner Website zu hosten und ich habe andere Fehler: 'Font from origin 'http://maximelimone.fr' wurde vom Laden von Cross-Origin Resource Sharing-Richtlinien blockiert: Nein 'Access- Control-Allow-Origin 'Kopfzeile ist auf der angeforderten Ressource vorhanden.' ... –