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 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
102 continue; | 102 continue; |
103 } | 103 } |
104 case FXBSTR_ID('T', 'R', '2', 0): | 104 case FXBSTR_ID('T', 'R', '2', 0): |
105 m_GeneralState.SetTR(pObject && !pObject->IsName() ? pObject : nullptr); | 105 m_GeneralState.SetTR(pObject && !pObject->IsName() ? pObject : nullptr); |
106 break; | 106 break; |
107 case FXBSTR_ID('B', 'M', 0, 0): { | 107 case FXBSTR_ID('B', 'M', 0, 0): { |
108 CPDF_Array* pArray = pObject->AsArray(); | 108 CPDF_Array* pArray = pObject->AsArray(); |
109 m_GeneralState.SetBlendMode(pArray ? pArray->GetStringAt(0) | 109 m_GeneralState.SetBlendMode(pArray ? pArray->GetStringAt(0) |
110 : pObject->GetString()); | 110 : pObject->GetString()); |
111 if (m_GeneralState.GetBlendType() > FXDIB_BLEND_MULTIPLY) | 111 if (m_GeneralState.GetBlendType() > FXDIB_BLEND_MULTIPLY) |
112 pParser->GetPageObjectHolder()->SetBackgroundAlphaNeeded(TRUE); | 112 pParser->GetPageObjectHolder()->SetBackgroundAlphaNeeded(true); |
113 break; | 113 break; |
114 } | 114 } |
115 case FXBSTR_ID('S', 'M', 'a', 's'): | 115 case FXBSTR_ID('S', 'M', 'a', 's'): |
116 if (ToDictionary(pObject)) { | 116 if (ToDictionary(pObject)) { |
117 m_GeneralState.SetSoftMask(pObject); | 117 m_GeneralState.SetSoftMask(pObject); |
118 m_GeneralState.SetSMaskMatrix(pParser->GetCurStates()->m_CTM); | 118 m_GeneralState.SetSMaskMatrix(pParser->GetCurStates()->m_CTM); |
119 } else { | 119 } else { |
120 m_GeneralState.SetSoftMask(nullptr); | 120 m_GeneralState.SetSoftMask(nullptr); |
121 } | 121 } |
122 break; | 122 break; |
(...skipping 43 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 |