/// <summary>
/// Gets the contents text from page to put in TOC.
/// </summary>
/// <returns>The name of the page.</returns>
/// <param name="pdfPath">The Pdf to read from.</param>
/// <param name="page">The pages to read from.</param>
public static string GetContentsTextFromPage(String pdfPath, int page)
{
PdfReader reader = new PdfReader(pdfPath);
StringWriter output = new StringWriter();
//Create rectangle to read from header
Rectangle mediabox = reader.GetPageSize(page);
float llx = mediabox.GetRight(10f) - 100f;
float urx = mediabox.GetRight(0f);
float lly = mediabox.GetTop(10f) - 50f;
float ury = mediabox.GetTop(0f);
Rectangle rect = new Rectangle(llx, lly, urx, ury);
//The header contains the name of the page. Read from Heaedr.
RenderFilter regionFilter = new RegionTextRenderFilter(rect);
ITextExtractionStrategy strategy = new FilteredTextRenderListener(
new LocationTextExtractionStrategy(), regionFilter);
output.WriteLine(PdfTextExtractor.GetTextFromPage(reader, page, strategy));
Console.WriteLine(output.ToString());
string ret = output.ToString();
//Remove newline characters
return(Regex.Replace(ret, @"\t|\n|\r", ""));
}