如何使用Android原生PdfDocument API创建横向PDF?

Kar*_*new 1 pdf android mobility

我正在使用PdfDocument API从View中使用Android编写PDF

问题

如果我正在写A4尺寸的PDF.我如何在横向模式下制作?

提前致谢.

mkl*_*mkl 6

Android PDF API的典型用法如下所示:

// create a new document
PdfDocument document = new PdfDocument();

// crate a page description
PageInfo pageInfo = new PageInfo.Builder(300, 300, 1).create();

// start a page
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();
Run Code Online (Sandbox Code Playgroud)

根据developer.android.com参考:

public PdfDocument.PageInfo.Builder (int pageWidth, int pageHeight, int pageNumber)
Run Code Online (Sandbox Code Playgroud)

在API级别19中添加

使用必需的页面信息属性创建新构建器.

参数

pageWidth PostScript中的页面宽度(1/72英寸).

pageHeight PostScript中的页面高度(1/72英寸).

pageNumber 页码.

因此,要创建包含纵向A4页面的PDF,您可以定义如下页面描述:

PageInfo pageInfo = new PageInfo.Builder(595, 842, 1).create();
Run Code Online (Sandbox Code Playgroud)

对于带有横向A4页面的PDF,您可以像这样定义它们:

PageInfo pageInfo = new PageInfo.Builder(842, 595, 1).create();
Run Code Online (Sandbox Code Playgroud)