OLD | NEW |
1 // Copyright 2016 PDFium Authors. All rights reserved. | 1 // Copyright 2016 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 "core/fpdfapi/page/cpdf_allstates.h" | 7 #include "core/fpdfapi/page/cpdf_allstates.h" |
8 | 8 |
9 #include "core/fpdfapi/page/pageint.h" | 9 #include "core/fpdfapi/page/pageint.h" |
10 #include "core/fpdfapi/parser/cpdf_array.h" | 10 #include "core/fpdfapi/parser/cpdf_array.h" |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
45 void CPDF_AllStates::SetLineDash(CPDF_Array* pArray, | 45 void CPDF_AllStates::SetLineDash(CPDF_Array* pArray, |
46 FX_FLOAT phase, | 46 FX_FLOAT phase, |
47 FX_FLOAT scale) { | 47 FX_FLOAT scale) { |
48 m_GraphState.SetLineDash(pArray, phase, scale); | 48 m_GraphState.SetLineDash(pArray, phase, scale); |
49 } | 49 } |
50 | 50 |
51 void CPDF_AllStates::ProcessExtGS(CPDF_Dictionary* pGS, | 51 void CPDF_AllStates::ProcessExtGS(CPDF_Dictionary* pGS, |
52 CPDF_StreamContentParser* pParser) { | 52 CPDF_StreamContentParser* pParser) { |
53 for (const auto& it : *pGS) { | 53 for (const auto& it : *pGS) { |
54 const CFX_ByteString& key_str = it.first; | 54 const CFX_ByteString& key_str = it.first; |
55 CPDF_Object* pElement = it.second; | 55 CPDF_Object* pElement = it.second.get(); |
56 CPDF_Object* pObject = pElement ? pElement->GetDirect() : nullptr; | 56 CPDF_Object* pObject = pElement ? pElement->GetDirect() : nullptr; |
57 if (!pObject) | 57 if (!pObject) |
58 continue; | 58 continue; |
59 | 59 |
60 uint32_t key = key_str.GetID(); | 60 uint32_t key = key_str.GetID(); |
61 switch (key) { | 61 switch (key) { |
62 case FXBSTR_ID('L', 'W', 0, 0): | 62 case FXBSTR_ID('L', 'W', 0, 0): |
63 m_GraphState.SetLineWidth(pObject->GetNumber()); | 63 m_GraphState.SetLineWidth(pObject->GetNumber()); |
64 break; | 64 break; |
65 case FXBSTR_ID('L', 'C', 0, 0): | 65 case FXBSTR_ID('L', 'C', 0, 0): |
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
166 case FXBSTR_ID('A', 'I', 'S', 0): | 166 case FXBSTR_ID('A', 'I', 'S', 0): |
167 m_GeneralState.SetAlphaSource(!!pObject->GetInteger()); | 167 m_GeneralState.SetAlphaSource(!!pObject->GetInteger()); |
168 break; | 168 break; |
169 case FXBSTR_ID('T', 'K', 0, 0): | 169 case FXBSTR_ID('T', 'K', 0, 0): |
170 m_GeneralState.SetTextKnockout(!!pObject->GetInteger()); | 170 m_GeneralState.SetTextKnockout(!!pObject->GetInteger()); |
171 break; | 171 break; |
172 } | 172 } |
173 } | 173 } |
174 m_GeneralState.SetMatrix(m_CTM); | 174 m_GeneralState.SetMatrix(m_CTM); |
175 } | 175 } |
OLD | NEW |