我目前正在尝试从html生成pdf(html是使用https://github.com/jaredrummler/HtmlBuilder生成的,并且有效)。
我最后一次尝试将给定的html转换为pdf:
TextView textView = new TextView(MyApp.getContext());
textView.setText(htmlBuilder.build());
textView.measure(600, 800);
textView.layout(0, 0, 600, 600);
textView.setWidth(600);
textView.setHeight(800);
System.out.println("HTML: " + html);
// create a new document
PdfDocument document = new PdfDocument();
// create a page description
PdfDocument.PageInfo pageInfo = new PdfDocument.PageInfo.Builder(600, 600, 1).create();
// start a page
PdfDocument.Page page = document.startPage(pageInfo);
// draw something on the page
View content = textView;
content.draw(page.getCanvas());
// finish the page
document.finishPage(page);
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
byte[] pdfBytes = new byte[0];
try {
document.writeTo(outputStream);
} catch (IOException e) {
e.printStackTrace();
}
转换后,将pdf文档转换为字节以将其发送到服务器。 我的问题现在是服务器接收的Pdf文件为空。 (它们似乎是有效的Pdf文件,但为空白)。
在一个旁注中:我知道有很多此类库,但是它们都(或者我所知至少一个)没有商业用途。 如果有人知道某个适用的库(将html转换为pdf)并且受Apache 2.0或MIT许可,请随时在此处链接它们。
编辑:我现在通过定义布局,宽度等来管理pdf显示内容。 但是内容的缩放比例过大而被截断。
任何人都可以分享建议或对此提供见解吗? 任何帮助将不胜感激。