我想从PDF文件中搜索特定文本,如果PDF包含图像或段落我也想从图像和段落中搜索文本。并在视图中显示,我如何实现这一点。
我有来自其他来源的以下代码,但我不知道天气是否正在搜索图像中的文字。
string file = Server.MapPath("~/images/OoPdfFormExample.pdf");
if (System.IO.File.Exists(file))
{
string searchText = txtSearh.Text.Trim();
string currentText = string.Empty;
System.Text.StringBuilder pdfText = new System.Text.StringBuilder();
iTextSharp.text.pdf.PdfReader pdfReader = new iTextSharp.text.pdf.PdfReader(file);
for (int page = 1; page <= pdfReader.NumberOfPages; page++)
{
ITextExtractionStrategy strategy = new SimpleTextExtractionStrategy();
currentText = PdfTextExtractor.GetTextFromPage(pdfReader, page, strategy);
currentText = System.Text.Encoding.UTF8.GetString(Encoding.Convert (Encoding.Default, Encoding.UTF8, Encoding.UTF8.GetBytes(currentText)));
pdfText.Append(currentText);
}
pdfReader.Close();
List<string> lines = new List<string>();
lines = pdfText.ToString().Trim().Split(' ').ToList();
List<string> matchedWord = new List<string>();
foreach (string item in lines)
{
if (!string.IsNullOrEmpty(item))
{
if (item.ToUpper().Contains(searchText.ToUpper()))
{
matchedWord.Add(item);
}
}
}
}
有人可以帮忙吗?