0
Ich habe dieses einfache Stück. Das Problem ist sehr seltsam - bei jeder Wiederholung gibt der Leser den gesamten Text seit Beginn des PDF-Dokuments zurück. Wahrscheinlich ist das etwas Einfaches, aber ich kann es nicht sehen.iText GetTextFromPage liefert den Text von Anfang an für alle
...
PdfReader reader = new PdfReader (path);
PdfReaderContentParser parser = new PdfReaderContentParser (reader);
...
public void Read(int start, int end)
{
ITextExtractionStrategy strategy = new SimpleTextExtractionStrategy();
StringBuilder sb = new StringBuilder();
for (int page = start; page < end; page++)
{
try
{
sb.Append(PdfTextExtractor.GetTextFromPage(reader, page, strategy));
}
catch (Exception ex)
{
throw new PdfException(ex.Message, ex.InnerException);
}
var p = new Page { Number = page, Content = sb.ToString()};
sb.Clear();
PageParsed?.Invoke(this, new PdfEventArgs<Page>(p));
}
FileParsed?.Invoke(this, new PdfEventArgs<string>(string.IsNullOrEmpty(Name) ? "File parsed" : Name));
}
Danke, wirklich war es einfach. _ "Dieser Renderer verfolgt die aktuelle Y-Position jeder Zeichenfolge." _ Aus der API-Dokumentation - das war nicht so klar. – Matt