2016-09-15 72 views
1

這是我的一個家庭釀造項目。這個想法是有一個電子紙顯示器來顯示從Android手機打開的電子書。 epaper之間的連接可以是有線或無線的 - 它並不重要,因爲我可以同時處理這兩者。 (我知道有類似的東西可用 - eInkCase,但是,嘿,我不想購買它)。生成內容以顯示在Android應用程序的ePaper顯示屏上

ePaper可以採用二進制格式,該格式基本上是來自BitMap的下采樣圖像。我已經完成了轉換,並通過對幾個頁面的文本內容進行硬編碼來測試顯示書籍的某些頁面。

現在最難的部分是顯示電子書,因爲它是在Android手機上閱讀的。我打算的電子書格式是ePub。我研究了一些應用程序並瞭解WebView用於顯示內容。

我的問題是:

  • 是否明智獲得的WebView以使用一些JavaScript位圖等同的文本內容?

  • 是否有任何其他方式來獲取WebView的內容?

任何幫助,非常感謝。

回答

0

你是如何從ePaper獲取數據的?你可以將其轉換爲字符串?

您可以生成動態字符串來創建臨時html文件並在運行時加載它。 e.g代碼

<WebView 
       android:id="@+id/WebViewToDisplay" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent" 
       android:layout_gravity="center" 
       android:fadeScrollbars="false" /> 

將數據加載到的WebView

WebView webViewDisplay; 
StringBuffer LoadWEb1; 

webViewDisplay = (WebView) findViewById(R.id.WebViewToDisplay); 
LoadWEb1 = new StringBuffer(); 
LoadWEb1.append("<html><body><h1>My First Heading</h1><p>My first paragraph.</p>"); 
//Sample code to read parameters at run time 
String strName = "Test Paragraph"; 
LoadWEb1.append("<br/><p>"+strName+"</p>"); 
String result = LoadWEb1.append("</body></html>").toString(); 
     WebSettings webSettings = webViewDisplay.getSettings(); 
     webSettings.setJavaScriptEnabled(true); 
     webViewDisplay.getSettings().setBuiltInZoomControls(true); 
     if (android.os.Build.VERSION.SDK_INT >= 11){ 
      webViewDisplay.setLayerType(View.LAYER_TYPE_SOFTWARE, null); 
      webViewDisplay.getSettings().setDisplayZoomControls(false); 
     } 

     webViewDisplay.loadDataWithBaseURL(null, result, "text/html", "utf-8", 
       null); 
     //To load local file directly from assets folder use below code 
     //webViewDisplay.loadUrl("file:///android_asset/aboutapp.html"); 
+0

感謝您的回覆。也許我在上面的描述中並不清楚。我需要做的是與剛剛描述的相反。我想發送數據到epaper。我是否正確理解這不是代碼正在嘗試執行的示例? – kevinLe

相關問題