亦余心之所善兮,虽九死其犹未悔。这篇文章主要讲述将Android视图转换为A4大小的PDF相关的知识,希望能为你提供帮助。
我有一个android简历构建应用程序。我想从我的角度生成A4大小的PDF。这是我的布局的样子-顶部有一个顶部应用栏,整个视图都封装在抽屉中。包含用户详细信息的主要部分封装在nestedScrollView中,后者包含多个LinearLayout和TextView。在下面的此屏幕截图中,我已经用模拟数据填充了它,但实际上,我是从Firebase实时数据库中获取数据并将其显示在UI上。
文章图片
我试图理解iTextPdf解决方案和此处已问过的类似类型的多个问题,但我找不到可靠的东西。请帮助我,这将有很大帮助。
[另外,请不要通过给出该问题不包含任何代码的原因来结束此问题。不是因为我没有。我正在尝试从头解决此问题。我已尽力描述我的问题。
答案尝试一下:
创建一个WebView并在其中复制您的edittext的文本:
webview.loadData(youredittext.gettext().tostring, "text/html", "UTF-8");
并通过以下功能将webview转换为pdf:
private void createWebPrintJob(WebView webView) {PrintManager printManager = (PrintManager) this
.getSystemService(Context.PRINT_SERVICE);
PrintDocumentAdapter printAdapter =
webView.createPrintDocumentAdapter();
String jobName = getString(R.string.app_name) + " Print Test";
if (printManager != null) {
printManager.print(jobName, printAdapter,
new PrintAttributes.Builder().build());
}
}
【将Android视图转换为A4大小的PDF】之后,用户可以选择页面大小,例如A4
另一答案[有很多将布局转换为PDF的库,但是让我们选择流行的库,以便在遇到问题时可以找到答案。
我列出的库的工作方式如下:它们将布局的屏幕截图作为位图图像并将其转换为pdf。
-第一种解决方案: iTextPDF https://github.com/itext/itext7(新版本)。
查看此详细教程,该教程也处理获取滚动视图https://www.codeproject.com/Articles/989236/How-to-Convert-Android-View-to-PDF-2的屏幕截图的情况>
以及此stackoverflow答案https://stackoverflow.com/a/29731275/12802591
-第二解决方案:
PdfMyXML库https://github.com/HendrixString/Android-PdfMyXml只需按照文档中的步骤进行。它们可能是其他解决方案,但是很受欢迎。
让我知道它是否对您有用,以及您是否被困住。谢谢!
推荐阅读
- 外部编辑器支持Google Apps脚本
- 将Ionic应用程序部署到Android模拟器(Ionic 4)时出错
- 错误消息(android.content.res.Resources $ NotFoundException)
- Android(如何使用声音资源包含通知声音())
- android - 从库中获取资源ID
- Android资源转换为字符串TypedValue警告
- Hmac在Google Apps脚本中登录,当Secret和Digest是base64编码时
- Android UI测试崩溃,但应用运行良好
- Visual Studio应用程序中心(appium-test-extension-1.0.jar;打开zip文件时出错)