how to convert pdf files to text files to search easily in matlab ?

37 views (last 30 days)
i want to search about text easily in pdf files , any way to search easily in pdf files using matlab ?

Answers (1)

Arun Mathew Iype
Arun Mathew Iype on 29 Jul 2014
You may be able to do this using the following article from File Exchange by Dimitri Shvorob http://www.mathworks.com/matlabcentral/fileexchange/19798-extract-text-from-a-pdf-document
The following are the steps mentioned in the submission.
  1. Download PDFBox library from http://sourceforge.net/projects/pdfbox/
  2. Download FontBox library from http://sourceforge.net/projects/fontbox/
  3. Modify the file paths in pdfParseDemo.m
  4. Enable cell mode and step through pdfParseDemo.m.Please note that the code does not handle files that have 'Content Copying' permission protected by a password.
The following is a modified version of the code from the submission containing just the parts relevant for you. Please change the file paths as required and download the jars from the link above.
clear java
javaaddpath('L:\NewJars\PDFBox-0.7.3\lib\PDFBox-0.7.3.jar')
pdfdoc = org.pdfbox.pdmodel.PDDocument;
reader = org.pdfbox.util.PDFTextStripper;
pdfdoc = pdfdoc.load('L:\NewJars\Sample 1.pdf');
pdfdoc.isEncrypted
%%text, with planty of padding
pdfstr = reader.getText(pdfdoc) %#ok
class(pdfstr)
pdfstr = char(pdfstr) %#ok
class(pdfstr)
%%text 'unpadded'
pdfstr = deblank(pdfstr) %#ok
%%will get an error here..
pdfdoc = pdfdoc.load('L:\NewJars\Sample 1.pdf');
pdfdoc.isEncrypted
pdfstr = reader.getText(pdfdoc) %#ok
%%but press forward..
pdfdoc.getDocument().close;
The variable “pdfstr” stores the text in the PDF document as a “java.lang.string. “ object. You can search for words in this string using the below code. You can check for other functionality available fo string using the “tab” auto completion.
>> pdfstr.indexOf('MathWorks')
ans =
11
You can also convert to a char array and use as needed
>> result = pdfstr.toCharArray();

Categories

Find more on File Operations in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!