For the complete documentation index, see llms.txt. This page is also available as Markdown.

Convert HTML to PDF in Android

HTML to PDF conversion is available for Android API 19 and above.

Internet connection is not required when converting local HTML files. However, it is required for converting HTTP/HTTPS links.

The HTML to PDF conversion API accepts different sources, such as HTTP/HTTPS URLs, HTML strings, and everything that can be loaded in a WebView.

To convert a link URL to PDF, simply:

public void convertFromUrl(Context context, String url, Uri folder, String outputFileName) {
    HTML2PDF.fromUrl(context, url, folder, outputFileName, new HTML2PDF.HTML2PDFListener() {
        @Override
        public void onConversionFinished(String pdfOutput, boolean isLocal) {
            // Handle callback when conversion finished
        }

        @Override
        public void onConversionFailed(String error) {
            // Handle callback if conversion failed
        }
    });
}
fun convertFromUrl(context: Context, url: String, folder: Uri, outputFileName: String) {
    HTML2PDF.fromUrl(context, url, folder, outputFileName, object : HTML2PDF.HTML2PDFListener {
        override fun onConversionFinished(pdfOutput: String, isLocal: Boolean) {
            // Handle callback when conversion finished
        }

        override fun onConversionFailed(error: String?) {
            // Handle callback if conversion failed
        }
    })
}

From HTML string

To convert an HTML string to PDF, simply:

where myBaseUrl is the URL to use as the page's base URL. If null defaults to about:blank and myHtmlData is a String of data in the UTF-8 encoding. Click [here for more info](https://developer.android.com/reference/android/webkit/WebView.html#loadDataWithBaseURL(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)).

From other sources

If none of the above fit your needs, you can also pass in a WebView directly for conversion:

Last updated

Was this helpful?