PrintedPdfDocument
public
class
PrintedPdfDocument
extends PdfDocument
java.lang.Object | ||
↳ | android.graphics.pdf.PdfDocument | |
↳ | android.print.pdf.PrintedPdfDocument |
This class is a helper for creating a PDF file for given print attributes. It is useful for implementing printing via the native Android graphics APIs.
This class computes the page width, page height, and content rectangle from the provided print
attributes and these precomputed values can be accessed via getPageWidth()
,
getPageHeight()
, and getPageContentRect()
, respectively. The
startPage(int)
methods creates pages whose
PageInfo
is initialized with the precomputed
values for width, height, and content rectangle.
A typical use of the APIs looks like this:
// open a new document PrintedPdfDocument document = new PrintedPdfDocument(context, printAttributes); // start a page Page page = document.startPage(0); // 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();
Summary
Public constructors | |
---|---|
PrintedPdfDocument(Context context, PrintAttributes attributes)
Creates a new document. |
Public methods | |
---|---|
Rect
|
getPageContentRect()
Gets the content rectangle. |
int
|
getPageHeight()
Gets the page height. |
int
|
getPageWidth()
Gets the page width. |
PdfDocument.Page
|
startPage(int pageNumber)
Starts a new page. |
Inherited methods | |
---|---|
Public constructors
PrintedPdfDocument
public PrintedPdfDocument (Context context, PrintAttributes attributes)
Creates a new document.
Note: You must close the document after you are
done by calling PdfDocument.close()
.
Parameters | |
---|---|
context |
Context : Context instance for accessing resources.
This value cannot be null . |
attributes |
PrintAttributes : The print attributes.
This value cannot be null . |
Public methods
getPageContentRect
public Rect getPageContentRect ()
Gets the content rectangle. This is the area of the page that contains printed data and is relative to the page top left.
Returns | |
---|---|
Rect |
The content rectangle.
This value cannot be null . |
getPageHeight
public int getPageHeight ()
Gets the page height.
Returns | |
---|---|
int |
The page height in PostScript points (1/72th of an inch). Value is 0 or greater |
getPageWidth
public int getPageWidth ()
Gets the page width.
Returns | |
---|---|
int |
The page width in PostScript points (1/72th of an inch). Value is 0 or greater |
startPage
public PdfDocument.Page startPage (int pageNumber)
Starts a new page. The page is created using width, height and content rectangle computed
from the print attributes passed in the constructor and the given page number to create an
appropriate PageInfo
.
After the page is created you can draw arbitrary content on the page's canvas which you can
get by calling Page.getCanvas()
.
After you are done drawing the content you should finish the page by calling
PdfDocument.finishPage(android.graphics.pdf.PdfDocument.Page)
. After the page is finished you should no longer access the page or
its canvas.
Note: Do not call this method after PdfDocument.close()
. Also do not call this
method if the last page returned by this method is not finished by calling
PdfDocument.finishPage(android.graphics.pdf.PdfDocument.Page)
.
Parameters | |
---|---|
pageNumber |
int : The page number. Must be a non negative.
Value is 0 or greater |
Returns | |
---|---|
PdfDocument.Page |
A blank page.
This value cannot be null . |
See also: