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 "fpdfsdk/javascript/color.h" | 7 #include "fpdfsdk/javascript/color.h" |
8 | 8 |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
84 break; | 84 break; |
85 } | 85 } |
86 } | 86 } |
87 | 87 |
88 void color::ConvertArrayToPWLColor(CJS_Array& array, CPWL_Color& color) { | 88 void color::ConvertArrayToPWLColor(CJS_Array& array, CPWL_Color& color) { |
89 int nArrayLen = array.GetLength(); | 89 int nArrayLen = array.GetLength(); |
90 if (nArrayLen < 1) | 90 if (nArrayLen < 1) |
91 return; | 91 return; |
92 | 92 |
93 CJS_Value value(array.GetJSRuntime()); | 93 CJS_Value value(array.GetJSRuntime()); |
94 array.GetElement(0, value); | 94 array.GetObjectBy(0, value); |
95 CFX_ByteString sSpace = value.ToCFXByteString(); | 95 CFX_ByteString sSpace = value.ToCFXByteString(); |
96 | 96 |
97 double d1 = 0; | 97 double d1 = 0; |
98 double d2 = 0; | 98 double d2 = 0; |
99 double d3 = 0; | 99 double d3 = 0; |
100 double d4 = 0; | 100 double d4 = 0; |
101 | 101 |
102 if (nArrayLen > 1) { | 102 if (nArrayLen > 1) { |
103 array.GetElement(1, value); | 103 array.GetObjectBy(1, value); |
104 d1 = value.ToDouble(); | 104 d1 = value.ToDouble(); |
105 } | 105 } |
106 | 106 |
107 if (nArrayLen > 2) { | 107 if (nArrayLen > 2) { |
108 array.GetElement(2, value); | 108 array.GetObjectBy(2, value); |
109 d2 = value.ToDouble(); | 109 d2 = value.ToDouble(); |
110 } | 110 } |
111 | 111 |
112 if (nArrayLen > 3) { | 112 if (nArrayLen > 3) { |
113 array.GetElement(3, value); | 113 array.GetObjectBy(3, value); |
114 d3 = value.ToDouble(); | 114 d3 = value.ToDouble(); |
115 } | 115 } |
116 | 116 |
117 if (nArrayLen > 4) { | 117 if (nArrayLen > 4) { |
118 array.GetElement(4, value); | 118 array.GetObjectBy(4, value); |
119 d4 = value.ToDouble(); | 119 d4 = value.ToDouble(); |
120 } | 120 } |
121 | 121 |
122 if (sSpace == "T") { | 122 if (sSpace == "T") { |
123 color = CPWL_Color(COLORTYPE_TRANSPARENT); | 123 color = CPWL_Color(COLORTYPE_TRANSPARENT); |
124 } else if (sSpace == "G") { | 124 } else if (sSpace == "G") { |
125 color = CPWL_Color(COLORTYPE_GRAY, (FX_FLOAT)d1); | 125 color = CPWL_Color(COLORTYPE_GRAY, (FX_FLOAT)d1); |
126 } else if (sSpace == "RGB") { | 126 } else if (sSpace == "RGB") { |
127 color = CPWL_Color(COLORTYPE_RGB, (FX_FLOAT)d1, (FX_FLOAT)d2, (FX_FLOAT)d3); | 127 color = CPWL_Color(COLORTYPE_RGB, (FX_FLOAT)d1, (FX_FLOAT)d2, (FX_FLOAT)d3); |
128 } else if (sSpace == "CMYK") { | 128 } else if (sSpace == "CMYK") { |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
214 return FALSE; | 214 return FALSE; |
215 | 215 |
216 CPWL_Color color1; | 216 CPWL_Color color1; |
217 CPWL_Color color2; | 217 CPWL_Color color2; |
218 ConvertArrayToPWLColor(array1, color1); | 218 ConvertArrayToPWLColor(array1, color1); |
219 ConvertArrayToPWLColor(array2, color2); | 219 ConvertArrayToPWLColor(array2, color2); |
220 color1.ConvertColorType(color2.nColorType); | 220 color1.ConvertColorType(color2.nColorType); |
221 vRet = color1 == color2; | 221 vRet = color1 == color2; |
222 return TRUE; | 222 return TRUE; |
223 } | 223 } |
OLD | NEW |