Default.aspx.cs
using System;
using Bytescout.PDFExtractor;
namespace FindText
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
String inputFile = Server.MapPath(@".\bin\sample1.pdf");
// Create Bytescout.PDFExtractor.TextExtractor instance
TextExtractor extractor = new TextExtractor();
extractor.RegistrationName = "demo";
extractor.RegistrationKey = "demo";
// Load sample PDF document
extractor.LoadDocumentFromFile(inputFile);
// Set the matching mode.
// WordMatchingMode.None - treats the search string as substring
// WordMatchingMode.ExactMatch - treats the search string as separate word
// WordMatchingMode.SmartMatch - will find the word in various forms (like Adobe Reader).
extractor.WordMatchingMode = WordMatchingMode.ExactMatch;
Response.Clear();
Response.ContentType = "text/html";
Response.Write("Searching for \"ipsum\" string:<br>");
// Search for "ipsum" string
if (extractor.Find(0, "ipsum", false))
{
do
{
Response.Write("<br/>");
Response.Write("Found on page 1 at location " + extractor.FoundText.Bounds + "<br/>");
Response.Write("<br/>");
// The found text may be splitted to parts.
// Iterate through each part of the found text.
for (var i = 0; i < extractor.FoundText.Elements.Count; i++)
{
ISearchResultElement element = extractor.FoundText.Elements[i];
Response.Write("Element #" + i + " at " + element.Bounds + "<br/>");
Response.Write("Text: " + element.Text + "<br/>");
Response.Write("Font is bold: " + element.FontIsBold + "<br/>");
Response.Write("Font is italic:" + element.FontIsItalic + "<br/>");
Response.Write("Font name: " + element.FontName + "<br/>");
Response.Write("Font size:" + element.FontSize + "<br/>");
Response.Write("Font color:" + element.FontColor + "<br/>");
}
}
while (extractor.FindNext());
}
Response.End();
}
}
}
Web.config
<?xml version="1.0"?>
<configuration>
<appSettings/>
<connectionStrings/>
<system.web>
<!--
Set compilation debug="true" to insert debugging
symbols into the compiled page. Because this
affects performance, set this value to true only
during development.
-->
<compilation debug="true" />
<!--
The <authentication> section enables configuration
of the security authentication mode used by
ASP.NET to identify an incoming user.
-->
<authentication mode="Windows" />
<!--
The <customErrors> section enables configuration
of what to do if/when an unhandled error occurs
during the execution of a request. Specifically,
it enables developers to configure html error pages
to be displayed in place of a error stack trace.
<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm" />
<error statusCode="404" redirect="FileNotFound.htm" />
</customErrors>
-->
</system.web>
</configuration>
Click here to get your Free Trial version of the SDK
also available as: