Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/223.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 使用本机PrintedPdfDocument将HTML字符串转换为PDF_Android_Android Pdf Api - Fatal编程技术网

Android 使用本机PrintedPdfDocument将HTML字符串转换为PDF

Android 使用本机PrintedPdfDocument将HTML字符串转换为PDF,android,android-pdf-api,Android,Android Pdf Api,如何仅使用本机PrintedPdfDocument(API19或更高版本)将HTML字符串(动态创建)转换为PDF?我寻找一种不需要添加任何外部库的解决方案。如果HTML非常有限,您可以尝试TextView和一些HTML到跨的转换器(例如HTML.fromHtml()) 或者,正如我在评论中所指出的,您可以使用WebView,尽管您表示它不符合您的业务需求,而且我不确定您是否能够访问PDF 否则,您唯一的无库选项是将HTML发送到服务器,该服务器可以向您返回PDF。我不知道有任何不使用库直接从H

如何仅使用本机
PrintedPdfDocument
API
19或更高版本)将
HTML
字符串(动态创建)转换为
PDF
?我寻找一种不需要添加任何外部库的解决方案。

如果HTML非常有限,您可以尝试
TextView
和一些HTML到跨
的转换器(例如
HTML.fromHtml()

或者,正如我在评论中所指出的,您可以使用
WebView
,尽管您表示它不符合您的业务需求,而且我不确定您是否能够访问PDF


否则,您唯一的无库选项是将HTML发送到服务器,该服务器可以向您返回PDF。

我不知道有任何不使用库直接从HTML获取PDF的方法。虽然Android 4.4+能够通过
WebView
打印HTML,但您无法直接获取可能用作打印内容的PDF。WebView无法解决我的问题,因为即使我可以轻松地从WebView内容生成PDF,我也只能在屏幕上显式显示它之后才能执行。如果在添加webView.setVisibility(View.GONE)之后;这个应用程序可以工作,我可以在我的情况下使用它。但添加GONE会导致无法捕获任何内容。我不确定你是否能理解我,请阅读我上面的评论。我需要一个解决方案,我可以在后台生成PDF(或在可见性消失的情况下)@Annabelle:“请阅读我上面的评论”--请阅读我上面的回答,特别是“尽管您表示它不符合您的业务要求,我不确定您是否能够获得PDF”。至少使用
TextView
,您应该能够创建一个未附加到视图层次结构的视图,但可以手动将
measure()
layout()
设置为所需大小,然后将其与
PdfDocument
一起使用。否则,您可以选择库、服务器,或者编写自己的HTML解析器并实现自己的低级
Canvas
绘图代码。