OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 | 6 |
7 #include "public/fpdf_text.h" | 7 #include "public/fpdf_text.h" |
8 | 8 |
9 #include "core/fpdfapi/page/cpdf_page.h" | 9 #include "core/fpdfapi/page/cpdf_page.h" |
10 #include "core/fpdfdoc/cpdf_viewerpreferences.h" | 10 #include "core/fpdfdoc/cpdf_viewerpreferences.h" |
11 #include "core/fpdftext/cpdf_linkextract.h" | 11 #include "core/fpdftext/cpdf_linkextract.h" |
12 #include "core/fpdftext/cpdf_textpage.h" | 12 #include "core/fpdftext/cpdf_textpage.h" |
13 #include "core/fpdftext/cpdf_textpagefind.h" | 13 #include "core/fpdftext/cpdf_textpagefind.h" |
14 #include "fpdfsdk/fsdk_define.h" | 14 #include "fpdfsdk/fsdk_define.h" |
15 #include "third_party/base/numerics/safe_conversions.h" | 15 #include "third_party/base/numerics/safe_conversions.h" |
16 #include "third_party/base/stl_util.h" | 16 #include "third_party/base/stl_util.h" |
17 | 17 |
18 #ifdef PDF_ENABLE_XFA | 18 #ifdef PDF_ENABLE_XFA |
19 #include "fpdfsdk/fpdfxfa/cpdfxfa_document.h" | 19 #include "fpdfsdk/fpdfxfa/cpdfxfa_context.h" |
20 #include "fpdfsdk/fpdfxfa/cpdfxfa_page.h" | 20 #include "fpdfsdk/fpdfxfa/cpdfxfa_page.h" |
21 #endif // PDF_ENABLE_XFA | 21 #endif // PDF_ENABLE_XFA |
22 | 22 |
23 #ifdef _WIN32 | 23 #ifdef _WIN32 |
24 #include <tchar.h> | 24 #include <tchar.h> |
25 #endif | 25 #endif |
26 | 26 |
27 namespace { | 27 namespace { |
28 | 28 |
29 CPDF_TextPage* CPDFTextPageFromFPDFTextPage(FPDF_TEXTPAGE text_page) { | 29 CPDF_TextPage* CPDFTextPageFromFPDFTextPage(FPDF_TEXTPAGE text_page) { |
(...skipping 10 matching lines...) Expand all Loading... |
40 | 40 |
41 } // namespace | 41 } // namespace |
42 | 42 |
43 DLLEXPORT FPDF_TEXTPAGE STDCALL FPDFText_LoadPage(FPDF_PAGE page) { | 43 DLLEXPORT FPDF_TEXTPAGE STDCALL FPDFText_LoadPage(FPDF_PAGE page) { |
44 CPDF_Page* pPDFPage = CPDFPageFromFPDFPage(page); | 44 CPDF_Page* pPDFPage = CPDFPageFromFPDFPage(page); |
45 if (!pPDFPage) | 45 if (!pPDFPage) |
46 return nullptr; | 46 return nullptr; |
47 | 47 |
48 #ifdef PDF_ENABLE_XFA | 48 #ifdef PDF_ENABLE_XFA |
49 CPDFXFA_Page* pPage = (CPDFXFA_Page*)page; | 49 CPDFXFA_Page* pPage = (CPDFXFA_Page*)page; |
50 CPDFXFA_Document* pDoc = pPage->GetDocument(); | 50 CPDFXFA_Context* pContext = pPage->GetContext(); |
51 CPDF_ViewerPreferences viewRef(pDoc->GetPDFDoc()); | 51 CPDF_ViewerPreferences viewRef(pContext->GetPDFDoc()); |
52 #else // PDF_ENABLE_XFA | 52 #else // PDF_ENABLE_XFA |
53 CPDF_ViewerPreferences viewRef(pPDFPage->m_pDocument); | 53 CPDF_ViewerPreferences viewRef(pPDFPage->m_pDocument); |
54 #endif // PDF_ENABLE_XFA | 54 #endif // PDF_ENABLE_XFA |
55 | 55 |
56 CPDF_TextPage* textpage = new CPDF_TextPage( | 56 CPDF_TextPage* textpage = new CPDF_TextPage( |
57 pPDFPage, viewRef.IsDirectionR2L() ? FPDFText_Direction::Right | 57 pPDFPage, viewRef.IsDirectionR2L() ? FPDFText_Direction::Right |
58 : FPDFText_Direction::Left); | 58 : FPDFText_Direction::Left); |
59 textpage->ParseTextPage(); | 59 textpage->ParseTextPage(); |
60 return textpage; | 60 return textpage; |
61 } | 61 } |
(...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
338 | 338 |
339 *left = rectArray[rect_index].left; | 339 *left = rectArray[rect_index].left; |
340 *right = rectArray[rect_index].right; | 340 *right = rectArray[rect_index].right; |
341 *top = rectArray[rect_index].top; | 341 *top = rectArray[rect_index].top; |
342 *bottom = rectArray[rect_index].bottom; | 342 *bottom = rectArray[rect_index].bottom; |
343 } | 343 } |
344 | 344 |
345 DLLEXPORT void STDCALL FPDFLink_CloseWebLinks(FPDF_PAGELINK link_page) { | 345 DLLEXPORT void STDCALL FPDFLink_CloseWebLinks(FPDF_PAGELINK link_page) { |
346 delete CPDFLinkExtractFromFPDFPageLink(link_page); | 346 delete CPDFLinkExtractFromFPDFPageLink(link_page); |
347 } | 347 } |
OLD | NEW |