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_edit.h" | 7 #include "public/fpdf_edit.h" |
8 | 8 |
| 9 #include "fpdfsdk/include/fsdk_define.h" |
| 10 #include "public/fpdf_formfill.h" |
| 11 |
9 #ifdef PDF_ENABLE_XFA | 12 #ifdef PDF_ENABLE_XFA |
10 #include "../include/fpdfxfa/fpdfxfa_app.h" | 13 #include "../include/fpdfxfa/fpdfxfa_app.h" |
11 #include "../include/fpdfxfa/fpdfxfa_doc.h" | 14 #include "../include/fpdfxfa/fpdfxfa_doc.h" |
12 #include "../include/fpdfxfa/fpdfxfa_page.h" | 15 #include "../include/fpdfxfa/fpdfxfa_page.h" |
13 #endif | 16 #endif // PDF_ENABLE_XFA |
14 #include "fpdfsdk/include/fsdk_define.h" | |
15 #include "public/fpdf_formfill.h" | |
16 | 17 |
17 #if _FX_OS_ == _FX_ANDROID_ | 18 #if _FX_OS_ == _FX_ANDROID_ |
18 #include "time.h" | 19 #include "time.h" |
19 #else | 20 #else |
20 #include <ctime> | 21 #include <ctime> |
21 #endif | 22 #endif |
22 | 23 |
23 DLLEXPORT FPDF_DOCUMENT STDCALL FPDF_CreateNewDocument() { | 24 DLLEXPORT FPDF_DOCUMENT STDCALL FPDF_CreateNewDocument() { |
24 CPDF_Document* pDoc = new CPDF_Document; | 25 CPDF_Document* pDoc = new CPDF_Document; |
25 pDoc->CreateNewDoc(); | 26 pDoc->CreateNewDoc(); |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
76 CPDF_Array* pMediaBoxArray = new CPDF_Array; | 77 CPDF_Array* pMediaBoxArray = new CPDF_Array; |
77 pMediaBoxArray->Add(new CPDF_Number(0)); | 78 pMediaBoxArray->Add(new CPDF_Number(0)); |
78 pMediaBoxArray->Add(new CPDF_Number(0)); | 79 pMediaBoxArray->Add(new CPDF_Number(0)); |
79 pMediaBoxArray->Add(new CPDF_Number(FX_FLOAT(width))); | 80 pMediaBoxArray->Add(new CPDF_Number(FX_FLOAT(width))); |
80 pMediaBoxArray->Add(new CPDF_Number(FX_FLOAT(height))); | 81 pMediaBoxArray->Add(new CPDF_Number(FX_FLOAT(height))); |
81 | 82 |
82 pPageDict->SetAt("MediaBox", pMediaBoxArray); | 83 pPageDict->SetAt("MediaBox", pMediaBoxArray); |
83 pPageDict->SetAt("Rotate", new CPDF_Number(0)); | 84 pPageDict->SetAt("Rotate", new CPDF_Number(0)); |
84 pPageDict->SetAt("Resources", new CPDF_Dictionary); | 85 pPageDict->SetAt("Resources", new CPDF_Dictionary); |
85 | 86 |
86 #ifndef PDF_ENABLE_XFA | 87 #ifdef PDF_ENABLE_XFA |
| 88 CPDFXFA_Page* pPage = |
| 89 new CPDFXFA_Page((CPDFXFA_Document*)document, page_index); |
| 90 pPage->LoadPDFPage(pPageDict); |
| 91 #else // PDF_ENABLE_XFA |
87 CPDF_Page* pPage = new CPDF_Page; | 92 CPDF_Page* pPage = new CPDF_Page; |
88 pPage->Load(pDoc, pPageDict); | 93 pPage->Load(pDoc, pPageDict); |
89 pPage->ParseContent(); | 94 pPage->ParseContent(); |
90 #else | 95 #endif // PDF_ENABLE_XFA |
91 CPDFXFA_Page* pPage = | |
92 new CPDFXFA_Page((CPDFXFA_Document*)document, page_index); | |
93 pPage->LoadPDFPage(pPageDict); | |
94 #endif | |
95 | 96 |
96 return pPage; | 97 return pPage; |
97 } | 98 } |
98 | 99 |
99 DLLEXPORT int STDCALL FPDFPage_GetRotation(FPDF_PAGE page) { | 100 DLLEXPORT int STDCALL FPDFPage_GetRotation(FPDF_PAGE page) { |
100 CPDF_Page* pPage = CPDFPageFromFPDFPage(page); | 101 CPDF_Page* pPage = CPDFPageFromFPDFPage(page); |
101 if (!pPage || !pPage->m_pFormDict || !pPage->m_pFormDict->KeyExist("Type") || | 102 if (!pPage || !pPage->m_pFormDict || !pPage->m_pFormDict->KeyExist("Type") || |
102 !pPage->m_pFormDict->GetElement("Type")->GetDirect() || | 103 !pPage->m_pFormDict->GetElement("Type")->GetDirect() || |
103 pPage->m_pFormDict->GetElement("Type")->GetDirect()->GetString().Compare( | 104 pPage->m_pFormDict->GetElement("Type")->GetDirect()->GetString().Compare( |
104 "Page")) { | 105 "Page")) { |
(...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
302 !pPage->m_pFormDict->GetElement("Type")->GetDirect() || | 303 !pPage->m_pFormDict->GetElement("Type")->GetDirect() || |
303 pPage->m_pFormDict->GetElement("Type")->GetDirect()->GetString().Compare( | 304 pPage->m_pFormDict->GetElement("Type")->GetDirect()->GetString().Compare( |
304 "Page")) { | 305 "Page")) { |
305 return; | 306 return; |
306 } | 307 } |
307 CPDF_Dictionary* pDict = pPage->m_pFormDict; | 308 CPDF_Dictionary* pDict = pPage->m_pFormDict; |
308 rotate %= 4; | 309 rotate %= 4; |
309 | 310 |
310 pDict->SetAt("Rotate", new CPDF_Number(rotate * 90)); | 311 pDict->SetAt("Rotate", new CPDF_Number(rotate * 90)); |
311 } | 312 } |
OLD | NEW |