生成内容以显示在Android应用程序的ePaper显示屏上
问题描述:
这是我的一个家庭酿造项目。这个想法是有一个电子纸显示器来显示从Android手机打开的电子书。 epaper之间的连接可以是有线或无线的 - 它并不重要,因为我可以同时处理这两者。 (我知道有类似的东西可用 - eInkCase,但是,嘿,我不想购买它)。生成内容以显示在Android应用程序的ePaper显示屏上
ePaper可以采用二进制格式,该格式基本上是来自BitMap的下采样图像。我已经完成了转换,并通过对几个页面的文本内容进行硬编码来测试显示书籍的某些页面。
现在最难的部分是显示电子书,因为它是在Android手机上阅读的。我打算的电子书格式是ePub。我研究了一些应用程序并了解WebView用于显示内容。
我的问题是:
是否明智获得的WebView以使用一些JavaScript位图等同的文本内容?
是否有任何其他方式来获取WebView的内容?
任何帮助,非常感谢。
答
你是如何从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");
感谢您的回复。也许我在上面的描述中并不清楚。我需要做的是与刚刚描述的相反。我想发送数据到epaper。我是否正确理解这不是代码正在尝试执行的示例? – kevinLe