Index: fpdfsdk/src/fpdftext.cpp |
diff --git a/fpdfsdk/src/fpdftext.cpp b/fpdfsdk/src/fpdftext.cpp |
index ac4e01e2bc5e52c6db8179bd6fd44eeb687a4a1a..741bbe718de966385ed6d519255c1a4288f46732 100644 |
--- a/fpdfsdk/src/fpdftext.cpp |
+++ b/fpdfsdk/src/fpdftext.cpp |
@@ -6,8 +6,10 @@ |
#include "public/fpdf_text.h" |
+#ifdef PDF_ENABLE_XFA |
#include "../include/fpdfxfa/fpdfxfa_doc.h" |
#include "../include/fpdfxfa/fpdfxfa_page.h" |
+#endif |
#include "core/include/fpdfdoc/fpdf_doc.h" |
#include "core/include/fpdftext/fpdf_text.h" |
#include "fpdfsdk/include/fsdk_define.h" |
@@ -20,9 +22,13 @@ DLLEXPORT FPDF_TEXTPAGE STDCALL FPDFText_LoadPage(FPDF_PAGE page) { |
CPDF_Page* pPDFPage = CPDFPageFromFPDFPage(page); |
if (!pPDFPage) |
return nullptr; |
+#ifndef PDF_ENABLE_XFA |
+ CPDF_ViewerPreferences viewRef(pPDFPage->m_pDocument); |
+#else |
CPDFXFA_Page* pPage = (CPDFXFA_Page*)page; |
CPDFXFA_Document* pDoc = pPage->GetDocument(); |
CPDF_ViewerPreferences viewRef(pDoc->GetPDFDoc()); |
+#endif |
IPDF_TextPage* textpage = |
IPDF_TextPage::CreateTextPage(pPDFPage, viewRef.IsDirectionR2L()); |
textpage->ParseTextPage(); |