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 "../../include/fpdfdoc/fpdf_doc.h" | 7 #include "../../include/fpdfdoc/fpdf_doc.h" |
| 8 #include "doc_utils.h" |
| 9 |
8 static const int FPDFDOC_UTILS_MAXRECURSION = 32; | 10 static const int FPDFDOC_UTILS_MAXRECURSION = 32; |
9 CFX_WideString» GetFullName(CPDF_Dictionary* pFieldDict); | 11 |
10 void» » » InitInterFormDict(CPDF_Dictionary*& pFormDict, CPDF_Docu
ment* pDocument); | |
11 FX_DWORD» » CountInterFormFonts(CPDF_Dictionary* pFormDict); | |
12 CPDF_Font*» » GetInterFormFont(CPDF_Dictionary* pFormDict, CPDF_Docume
nt* pDocument, FX_DWORD index, CFX_ByteString& csNameTag); | |
13 CPDF_Font*» » GetInterFormFont(CPDF_Dictionary* pFormDict, CPDF_Docume
nt* pDocument, CFX_ByteString csNameTag); | |
14 CPDF_Font*» » GetInterFormFont(CPDF_Dictionary* pFormDict, CPDF_Docume
nt* pDocument, CFX_ByteString csFontName, CFX_ByteString& csNameTag); | |
15 CPDF_Font*» » GetNativeInterFormFont(CPDF_Dictionary* pFormDict, CPDF_
Document* pDocument, FX_BYTE charSet, CFX_ByteString& csNameTag); | |
16 CPDF_Font*» » GetNativeInterFormFont(CPDF_Dictionary* pFormDict, CPDF_
Document* pDocument, CFX_ByteString& csNameTag); | |
17 FX_BOOL»» » FindInterFormFont(CPDF_Dictionary* pFormDict, const CPDF
_Font* pFont, CFX_ByteString& csNameTag); | |
18 FX_BOOL»» » FindInterFormFont(CPDF_Dictionary* pFormDict, CPDF_Docum
ent* pDocument, CFX_ByteString csFontName, CPDF_Font*& pFont, CFX_ByteString& cs
NameTag); | |
19 void» » » AddInterFormFont(CPDF_Dictionary*& pFormDict, CPDF_Docum
ent* pDocument, const CPDF_Font* pFont, CFX_ByteString& csNameTag); | |
20 CPDF_Font*» » AddNativeInterFormFont(CPDF_Dictionary*& pFormDict, CPDF
_Document* pDocument, FX_BYTE charSet, CFX_ByteString& csNameTag); | |
21 CPDF_Font*» » AddNativeInterFormFont(CPDF_Dictionary*& pFormDict, CPDF
_Document* pDocument, CFX_ByteString& csNameTag); | |
22 void» » » RemoveInterFormFont(CPDF_Dictionary* pFormDict, const CP
DF_Font* pFont); | |
23 void» » » RemoveInterFormFont(CPDF_Dictionary* pFormDict, CFX_Byte
String csNameTag); | |
24 CPDF_Font*» » GetDefaultInterFormFont(CPDF_Dictionary* pFormDict, CPDF
_Document* pDocument); | |
25 void» » » SetDefaultInterFormFont(CPDF_Dictionary*& pFormDict, CPD
F_Document* pDocument, const CPDF_Font* pFont); | |
26 void» » » SaveCheckedFieldStatus(CPDF_FormField* pField, CFX_ByteA
rray& statusArray); | |
27 FX_BOOL»» » NeedPDFEncodeForFieldFullName(const CFX_WideString& csFi
eldName); | |
28 FX_BOOL»» » NeedPDFEncodeForFieldTree(CPDF_Dictionary* pFieldDict, i
nt nLevel = 0); | |
29 void» » » EncodeFieldName(const CFX_WideString& csName, CFX_ByteSt
ring& csT); | |
30 void» » » UpdateEncodeFieldName(CPDF_Dictionary* pFieldDict, int n
Level = 0); | |
31 CFX_WideString GetFullName(CPDF_Dictionary* pFieldDict) | 12 CFX_WideString GetFullName(CPDF_Dictionary* pFieldDict) |
32 { | 13 { |
33 CFX_WideString full_name; | 14 CFX_WideString full_name; |
34 CPDF_Dictionary* pLevel = pFieldDict; | 15 CPDF_Dictionary* pLevel = pFieldDict; |
35 while (pLevel) { | 16 while (pLevel) { |
36 CFX_WideString short_name = pLevel->GetUnicodeText("T"); | 17 CFX_WideString short_name = pLevel->GetUnicodeText("T"); |
37 if (short_name != L"") { | 18 if (short_name != L"") { |
38 if (full_name == L"") { | 19 if (full_name == L"") { |
39 full_name = short_name; | 20 full_name = short_name; |
40 } else { | 21 } else { |
(...skipping 699 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
740 CPDF_Object* pAttr = pFieldDict->GetElementValue(name); | 721 CPDF_Object* pAttr = pFieldDict->GetElementValue(name); |
741 if (pAttr) { | 722 if (pAttr) { |
742 return pAttr; | 723 return pAttr; |
743 } | 724 } |
744 CPDF_Dictionary* pParent = pFieldDict->GetDict("Parent"); | 725 CPDF_Dictionary* pParent = pFieldDict->GetDict("Parent"); |
745 if (pParent == NULL) { | 726 if (pParent == NULL) { |
746 return NULL; | 727 return NULL; |
747 } | 728 } |
748 return FPDF_GetFieldAttr(pParent, name, nLevel + 1); | 729 return FPDF_GetFieldAttr(pParent, name, nLevel + 1); |
749 } | 730 } |
OLD | NEW |