Skip to content

Printing

Since v5.0, Foxit PDF SDK for Android provides PDF printing through UI Extensions, based on Android PrintManager. It supports standard PDF, Static XFA, and Dynamic XFA documents.

System Requirements

Printing requires Android 4.4 (API Level 19) or later. On older versions, calling print APIs shows that the system version is not supported.

Built-in print in UI Extensions

If you use the full reader (UI Extensions), printing is built into the More Menu; users can print without extra code.

Start Printing via API

UIExtensionsManager provides startPrintJob() to trigger printing from code. Results are reported through IPrintResultCallback (printFinished, printFailed, printCancelled).

java
// Print PDF / Static XFA document
uiExtensionsManager.startPrintJob(context, pdfDoc, printJobName, fileName, callback);

// Print Dynamic XFA document
uiExtensionsManager.startPrintJob(context, xfaDoc, printJobName, fileName, callback);

Example

java
import com.foxit.sdk.pdf.PDFDoc;

PDFDoc doc = new PDFDoc("/sdcard/Sample.pdf");
doc.load(null);

IPrintResultCallback callback = new IPrintResultCallback() {
    @Override
    public void printFinished() { /* Print completed */ }

    @Override
    public void printFailed() { /* Print failed */ }

    @Override
    public void printCancelled() { /* Print cancelled */ }
};

uiExtensionsManager.startPrintJob(activity, doc, "print_job", "Sample", callback);

API Reference

See the API Reference for full UIExtensionsManager documentation.