2012-02-07 9 views
5

He referido esto siegmann android tutorial y he registrado con éxito el Title, Author name y Table of contents.Trabajando con archivos ePub en android

Ahora leo que todo el libro se puede ver en WebView.

Pero no encuentro ningún tutorial para Dispalying un archivo ePub.

Cuando se trata de crear un archivo ePub, encontré this from SO pero soy incapaz de ponerlo en práctica, ya que no tengo ninguna idea acerca de main.xml.

Sugiera cualquier tutorial al crear y visualizar un archivo ePub.

Para crear ePub, traté de referirme a this siegmann eg pero no puedo entenderlo correctamente.

¿Debo proporcionar .html para cada capítulo y .css para crear un archivo ePub?

Sé que no estoy muy claro en esta cuestión ya que soy un principiante absoluto cuando se trata de trabajar con ePub, por lo que cualquier sugerencia/ayuda apreciada.

+0

seguir este: http://stackoverflow.com/questions/10313113/taking-long -time-to-display-epub-files-in-device – skygeek

Respuesta

2

Prueba esto en logTableOfContents()

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

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

} 

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

También puede espina el contenido epub con la ayuda 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);