将Android视图转换为A4大小的PDF
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将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());
}
}
之后,用户可以选择页面大小,例如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只需按照文档中的步骤进行。它们可能是其他解决方案,但是很受欢迎。
让我知道它是否对您有用,以及您是否被困住。谢谢!
以上是关于将Android视图转换为A4大小的PDF的主要内容,如果未能解决你的问题,请参考以下文章