我试着学习如何为我的Android应用程序生成PDF。
我遵循了官方文档,但代码不起作用。
编译器发现了一些编译错误,但我所做的只是从代码中复制/粘贴代码。
请看一下代码并告诉我原因(:
PrintAttributes printAttributes = new PrintAttributes.Builder().
setMediaSize(PrintAttributes.MediaSize.ISO_A4)
.setColorMode(PrintAttributes.COLOR_MODE_COLOR)
.setMinMargins(PrintAttributes.Margins.NO_MARGINS)
.build();
PrintedPdfDocument document = new PrintedPdfDocument(this, printAttributes);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
// crate a page description
PdfDocument.PageInfo pageInfo = new PdfDocument.PageInfo.Builder(new Rect(0, 0, 100, 100), 1).create();
// start a page
PdfDocument.Page page = document.startPage(pageInfo);
// draw something on the page
View content = getContentView();
content.draw(page.getCanvas());
// finish the page
document.finishPage(page);
// add more pages
// write the document content
document.writeTo(getOutputStream());
// close the document
document.close();发布于 2016-04-17 07:08:44
PageInfo.Builder不接受您使用的参数。尝试替换PdfDocument.PageInfo pageInfo = new Rect(new Rect(0,0,100,100),1)PdfDocument.PageInfo.Builder();
使用
新PdfDocument.PageInfo.Builder(100,100,1).create();` = PdfDocument.PageInfo pageInfo
请检查未从正确的类调用PdfDocument.PageInfo.Builder
getContentView()的文档,请检查Activity类的here
getOutputStream()不存在。如果您要做的是将内容复制到文件中,您可能应该创建一个新文件,然后将输出复制到该文件中。
onCreate()方法中调用。有关生成安卓版PDF的更多信息,请查看此链接。3
https://stackoverflow.com/questions/36627691
复制相似问题