From 3bee9c60f013b8b7e99c39ee35699d132b330334 Mon Sep 17 00:00:00 2001 From: Miklos Vajna Date: Tue, 7 Aug 2018 21:45:34 +0000 Subject: Add FPDFTextObj_GetText() API Generalize CPDF_TextPage::GetTextByRect(), so that it's possible to get the text from a text page using a predicate, that way we can easily get the text that belongs to single text object as well. Change-Id: Ia457af0f41184694dc1481709be72b35685bce7f Reviewed-on: https://pdfium-review.googlesource.com/39530 Reviewed-by: Henrique Nakashima Reviewed-by: Lei Zhang Commit-Queue: Lei Zhang --- core/fpdftext/cpdf_textpage.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'core/fpdftext/cpdf_textpage.h') diff --git a/core/fpdftext/cpdf_textpage.h b/core/fpdftext/cpdf_textpage.h index 36d01854f5..90b45bd96b 100644 --- a/core/fpdftext/cpdf_textpage.h +++ b/core/fpdftext/cpdf_textpage.h @@ -8,6 +8,7 @@ #define CORE_FPDFTEXT_CPDF_TEXTPAGE_H_ #include +#include #include #include "core/fpdfapi/page/cpdf_pageobjectlist.h" @@ -97,6 +98,7 @@ class CPDF_TextPage { std::vector GetRectArray(int start, int nCount) const; int GetIndexAtPos(const CFX_PointF& point, const CFX_SizeF& tolerance) const; WideString GetTextByRect(const CFX_FloatRect& rect) const; + WideString GetTextByObject(const CPDF_TextObject* pTextObj) const; // Returns string with the text from |m_TextBuf| that are covered by the input // range. |start| and |count| are in terms of the |m_CharIndex|, so the range @@ -151,6 +153,8 @@ class CPDF_TextPage { TextOrientation FindTextlineFlowOrientation() const; void AppendGeneratedCharacter(wchar_t unicode, const CFX_Matrix& formMatrix); void SwapTempTextBuf(int32_t iCharListStartAppend, int32_t iBufStartAppend); + WideString GetTextByPredicate( + const std::function& predicate) const; UnownedPtr const m_pPage; std::vector m_CharIndex; -- cgit v1.2.3