如何使用ABCPdf.NET从PDF文件的所有网页中提取文本?(How to use the ABC

2019-06-25 10:02发布

如何使用ABCPdf.NET工具从PDF文件中提取内容的文本?

我试过了gettext方法,但不提取的内容:

var doc = new Doc();    

        var url = @".../FileName.pdf";

        doc.Read(url);

        string xmlContents = doc.GetText("Text");
        Response.Write(xmlContents);
        doc.Clear();
        doc.Dispose();

我的PDF有近1000字,但只的getText返回4-5的话。 我意识到它返回仅在第一页的文本。

所以问题应该是“如何提取从PDF文件中的所有页面的文本?” - (改标题,以使其更清晰)。

谢谢,

Answer 1:

为了您的利益,是你!

 public string ExtractTextsFromAllPages(string pdfFileName)
    {
        var sb = new StringBuilder();

        using (var doc = new Doc())
        {
            doc.Read(pdfFileName);

            for (var currentPageNumber = 1; currentPageNumber <= doc.PageCount; currentPageNumber++)
            {
                doc.PageNumber = currentPageNumber;
                sb.Append(doc.GetText("Text"));
            }
        }

        return sb.ToString();
    }

如果你没有网址,但有个字节,则:

public string ExtractTextsFromAllPages(Byte[] pdfBytes)
    {
        var sb = new StringBuilder();

        using (var doc = new Doc())
        {
            doc.Read(pdfBytes);

            for (var currentPageNumber = 1; currentPageNumber <= doc.PageCount; currentPageNumber++)
            {
                doc.PageNumber = currentPageNumber;
                sb.Append(doc.GetText("Text"));
            }
        }

        return sb.ToString();
    }


Answer 2:

你是否尝试过的getText方法?



Answer 3:

doc.Read(.......);
var textOperation = new TextOperation(doc);
textOperation.PageContents.AddPages();
string allText = textOperation.GetText();


文章来源: How to use the ABCPdf.NET to extract texts from all pages of a PDF file?