I have a requirement to develop an application that can scan documents and produce searchable PDF's that can be previewed from a desktop application (e.g. WPF) or a web browser. Also ability to scan a barcode from the scanned document.


  • Scanning documents
  • Produce searchable PDF's (OCR)
    • OCR has to be usable without scanning (for example when user uploads image)
  • PDF previewing & basic manipulation (e.g. turn page upside down)
  • Barcode scanning from scanned documents.
  • (Optional but nice to have) .NET Core / cross-platform support

Before using any paid libraries, I would like to first find out how easy it is to do this with free and open source libraries.

From what little research I did, it seems like I can use the following to achieve this, but it seems like a lot of work:

The above might work, but I've read in different places that WIA doesn't work quite well with some scanners and it might be better to use some kind of TWAIN SDK for best scanner support.

Perhaps it's then better to use some paid library, which hopefully doesn't have astronomical costs, such as LEADTOOLS TWAIN SDK.

If paid is the way, what would be the best choice for a .NET Framework / .NET Core developer?

  • It appears you’re already aware of our SDK, which contains advanced support for both Twain and WIA, in addition to PDF, barcode and many other features. If you can’t obtain your requirements with free libraries, we recommend making full use of the free evaluation period of LEADTOOLS before you decide to purchase. You can get the evaluation edition from this page and it comes with fully free tech support. Feb 4 '20 at 21:50
  • It seems like so far LEADTOOLS is the best option for us, since we are also considering web scanning. Feb 10 '20 at 13:45

Saraff.Twain.NET is an open source library that can be used for acquiring images from the scanner. Syncfusion Essential PDF can be used to save the image in a PDF.


Syncfusion Tesseract OPX has a wrapper for the Tesseract engine that can be used to process the text in images within PDF documents and overlay them with searchable text.

//Load a PDF document
PdfLoadedDocument lDoc = new PdfLoadedDocument("Input.pdf");
//Set OCR language to process
processor.Settings.Language = Languages.English;
//Process OCR by providing the PDF document and Tesseract data
processor.PerformOCR(lDoc, @"Tessdata\");
//Save the OCR processed PDF document in the disk

Tesseract OPX is free, but Essential PDF is a licensed product. The whole product is also available for free through the community license if you qualify (less than 1 million USD in revenue). Licensing cost is $995 per developer.

Syncfusion Essential PDF also includes a PDF Viewer that can be used for previewing the documents.

Essential PDF also integrates with the open source ZXing library to read barcodes from PDFs. Example

Both .NET Framework and .NET Core are supported.

Note: I work for Syncfusion.

  • Thank you for the suggestion, but I think LEADTOOLS offers everything we need and more. We have not decided whether we need these features yet or not though so things can change. Feb 10 '20 at 13:46
  • I think Aspose libraries offers more than Leadtools or syncfusion
    – Tomislav
    Nov 8 '20 at 18:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.