2012-02-07 4 views
5

J'ai référé ce siegmann android tutorial et enregistré avec succès les Title, Author name et Table of contents.Travailler avec des fichiers ePub dans android

Maintenant, j'ai lu que le livre entier peut être consulté dans WebView.

Mais je ne trouve aucun tutoriel pour Dispalying un fichier ePub.

Quand il s'agit de créer un fichier ePub, j'ai trouvé this from SO Mais je ne peux pas l'implémenter car je n'ai aucune idée sur main.xml.

Veuillez suggérer n'importe quel tutoriel à créer et afficher un fichier ePub.

Pour créer ePub, j'ai essayé de me référer à this siegmann eg mais je ne suis pas capable de le comprendre correctement. Dois-je fournir .html pour chaque chapitre et .css pour créer un fichier ePub?

Je sais que je ne suis pas très clair dans cette question car je suis un débutant absolu quand il s'agit de travailler avec ePub, donc toute suggestion/aide appréciée.

+0

suivre ceci: http://stackoverflow.com/questions/10313113/taking-long -time-à-afficher-epub-files-in-device – skygeek

Répondre

2

Essayez ceci dans logTableOfContents()

while ((line = r.readLine()) != null) { 

line1 = line1.concat(Html.fromHtml(line).toString()); 

} 

finalstr = finalstr.concat("\n").concat(line1); 
1

Vous pouvez également la colonne vertébrale la teneur en epub avec l'aide de

 Spine spine = book.getSpine(); 
     List<SpineReference> spineList = spine.getSpineReferences() ; 
     int count = spineList.size(); 
     StringBuilder string = new StringBuilder(); 
     for (int i = 0; count > i; i++) { 
      Resource res = spine.getResource(i); 
      try { 
       InputStream is = res.getInputStream(); 
       BufferedReader reader = new BufferedReader(new InputStreamReader(is)); 
       try { 
        while ((line = reader.readLine()) != null) { 
         linez = string.append(line + "\n").toString(); 
         System.err.println("res media"+res.getMediaType()); 
         htmlTextStr = Html.fromHtml(linez).toString(); 
         Log.e("Html content.",htmlTextStr); 
         speak(htmlTextStr); 
        } 
       } catch (IOException e) {e.printStackTrace();} 

       //do something with stream 
      } catch (IOException e) { 
       e.printStackTrace(); 
      } 
     } 
     webview.getSettings().setAllowFileAccess(true); 
     webview.getSettings().setBuiltInZoomControls(true); 
     webview.getSettings().setJavaScriptEnabled(true); 

     webview.loadDataWithBaseURL("file:///android_asset/", linez, "application/xhtml+xml", "UTF-8", null);