我有一个 android 线性布局,我想将其转换为 PDF。很多时候,这个 PDF 会跨越多个页面。虽然我能够将内容转换为单页 PDF,但在将 PDF 分解为多页 PDF 时遇到了一些困难。我已经给出了下面的相关代码块,为了简单起见,硬编码了一些数字。在这里, PdfDocument.PageInfo.Builder 接受 3 个参数 - 宽度、高度和页码(之前,它曾经接受新的 Rect(0,0,800,100) ,它不再在 API 23 中工作)。现在,当我遍历 for 循环时,我不确定如何为多页 PDF 获取不同的内容。下面给出的当前代码段为每个页面生成相同的内容,因为它基于宽度和高度而不是基于坐标。
PdfDocument.PageInfo pageInfo;
int noOfPages = (int)Math.floor(content.getHeight()/1000)+1;
for (int i=1;i<=noOfPages;i++) {
pageInfo = new PdfDocument.PageInfo.Builder
(800,1000,i).create();
PdfDocument.Page page = document.startPage(pageInfo);
content.draw(page.getCanvas());
document.finishPage(page);
}
Run Code Online (Sandbox Code Playgroud)
自从我上次处理 PDFDocument 内容以来,已经超过 2 年了,很抱歉我没有准确回答您的问题,但我会分享我对它的一点了解,希望对您有所帮助。
样本
看看我 2 年前写的代码,它可能对你有帮助 - https://gist.github.com/apvasanth03/ed903535aed12c93e30b102d9596c399
笔记
如果您的视图包含多行的 TextView,那么如何将您的视图分解为不同的页面会很困难。我没有答案。
如果您找到任何解决方案,请分享。
| 归档时间: |
|
| 查看次数: |
4278 次 |
| 最近记录: |