PDF Odczyt rozłożonego tekstu (zaznacz adnotacje) za pomocą C #

Napisałem narzędzie do wyodrębniania za pomocą iTextSharp, które wyodrębnia informacje adnotacji z dokumentów PDF. W przypadku adnotacji podświetlenia otrzymuję tylko prostokąt dla obszaru na stronie, który jest podświetlony.

Zamierzam wyodrębnić tekst, który został wyróżniony. Do tego używam `PdfTextExtractor '.

Rectangle rect = new Rectangle(
    pdfArray.GetAsNumber(0).FloatValue, 
    pdfArray.GetAsNumber(1).FloatValue,
    pdfArray.GetAsNumber(2).FloatValue,
    pdfArray.GetAsNumber(3).FloatValue);

RenderFilter[] filter = { new RegionTextRenderFilter(rect) };
ITextExtractionStrategy strategy = new FilteredTextRenderListener(new LocationTextExtractionStrategy(), filter);
string textInsideRect = PdfTextExtractor.GetTextFromPage(pdfReader, pageNo, strategy);
return textInsideRect;

Wynik zwrócony przezPdfTextExtractor nie jest całkowicie poprawne. Na przykład powraca„zamierzał wyeliminować pościg za papierem” nawet jeśli tylko"wyeliminować" został wyróżniony.

Interesujący jest cały tekst TJ zawierający podświetlony"wyeliminować" jest„zamierzał wyeliminować pościg za papierem” (TJ to instrukcja PDF, która zapisuje tekst na stronie).

Chciałbym usłyszeć jakikolwiek wkład w tej kwestii - także rozwiązania, które nie dotyczą iTextSharp.

questionAnswers(2)

yourAnswerToTheQuestion