read_pdf_text

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

Android

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

iOS

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

For error like: "Could not find or use auto-linked library 'swiftObjectiveC'"

Solution can be found here: stackoverflow.com/a/54586937/2881394

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.

Example

read_pdf_text.gif

getPDFtext(String path)

Returns text from PDF file as a String.

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

getPDFtextPaginated(String path)

Returns text from PDF but in a String 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 {
      print('Failed to get PDF text.');
    }
    return textList;
  }

getPDFlength(String path)

Returns length of the document as an integer.

  Future<int> getPDFlength(String path) async {
    int length = 0;
    try {
      length = await ReadPdfText.getPDFlength(path);
    } on PlatformException {
      print('Failed to get PDF length';)
    }
    return length;
  }

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

How to write Flutter plugin --1

Libraries

read_pdf_text