This package parses text out of PDF documents and returns it as a string.


On Android the plugin uses PDFbox open source library modified by Tom Roush.


The iOS plugin uses PDFKit to parse the text out of PDF documents. It requires iOS version 11 or higher.

Getting Started

The package only has three functions getPDFtext(path), getPDFtextPaginated(path) and getPDFlength(path). Path is the file path to the PDF file you want to parse. I used file_picker package in the example to get the path of the PDF file.

Check the example for more details.



getPDFtext(String path)

Returns all text from PDF file as a String.

    Future<String> getPDFtext(String path) async {
    String text = "";
    try {
      text = await ReadPdfText.getPDFtext(path);
    } on PlatformException {
      text = 'Failed to get PDF text.';
    return text;


Returns all text from PDF but in a List, where each item is a page of the PDF file.

  Future<List<String>> getPDFtextPaginated(String path) async {
    List<String> textList = List<String>();
    try {
      textList = await ReadPdfText.getPDFtextPaginated(path);
    } on PlatformException {}
    return textList;


Returns length of the document as integer.

  Future<int> getPDFlength(String path) async {
    int length = 0;
    try {
      length = await ReadPdfText.getPDFlength(path);
    } on PlatformException {}
    return length;

I wrote an article about developing package for Flutter check it out

How to write Flutter plugin --1