Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(143)

Side by Side Diff: core/src/fxcodec/codec/fx_codec_icc.cpp

Issue 1252613002: FX_BOOL considered harmful. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Manual edits. Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « core/src/fxcodec/codec/fx_codec_flate.cpp ('k') | core/src/fxcodec/codec/fx_codec_jbig.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 "../../../../third_party/lcms2-2.6/include/lcms2.h" 7 #include "../../../../third_party/lcms2-2.6/include/lcms2.h"
8 #include "../../../include/fxcodec/fx_codec.h" 8 #include "../../../include/fxcodec/fx_codec.h"
9 #include "codec_int.h" 9 #include "codec_int.h"
10 10
11 const FX_DWORD N_COMPONENT_LAB = 3; 11 const FX_DWORD N_COMPONENT_LAB = 3;
12 const FX_DWORD N_COMPONENT_GRAY = 1; 12 const FX_DWORD N_COMPONENT_GRAY = 1;
13 const FX_DWORD N_COMPONENT_RGB = 3; 13 const FX_DWORD N_COMPONENT_RGB = 3;
14 const FX_DWORD N_COMPONENT_CMYK = 4; 14 const FX_DWORD N_COMPONENT_CMYK = 4;
15 const FX_DWORD N_COMPONENT_DEFAULT = 3; 15 const FX_DWORD N_COMPONENT_DEFAULT = 3;
16 16
17 FX_BOOL MD5ComputeID( const void* buf, FX_DWORD dwSize, uint8_t ID[16] ) 17 bool MD5ComputeID( const void* buf, FX_DWORD dwSize, uint8_t ID[16] )
18 { 18 {
19 return cmsMD5computeIDExt(buf, dwSize, ID); 19 return cmsMD5computeIDExt(buf, dwSize, ID);
20 } 20 }
21 struct CLcmsCmm { 21 struct CLcmsCmm {
22 cmsHTRANSFORM m_hTransform; 22 cmsHTRANSFORM m_hTransform;
23 int m_nSrcComponents; 23 int m_nSrcComponents;
24 int m_nDstComponents; 24 int m_nDstComponents;
25 FX_BOOL» » m_bLab; 25 bool» » m_bLab;
26 }; 26 };
27 extern "C" { 27 extern "C" {
28 int ourHandler(int ErrorCode, const char *ErrorText) 28 int ourHandler(int ErrorCode, const char *ErrorText)
29 { 29 {
30 return TRUE; 30 return true;
31 } 31 }
32 }; 32 };
33 FX_BOOL CheckComponents(cmsColorSpaceSignature cs, int nComponents, FX_BOOL bDst ) 33 bool CheckComponents(cmsColorSpaceSignature cs, int nComponents, bool bDst)
34 { 34 {
35 if (nComponents <= 0 || nComponents > 15) { 35 if (nComponents <= 0 || nComponents > 15) {
36 return FALSE; 36 return false;
37 } 37 }
38 switch(cs) { 38 switch(cs) {
39 case cmsSigLabData: 39 case cmsSigLabData:
40 if (nComponents < 3) { 40 if (nComponents < 3) {
41 return FALSE; 41 return false;
42 } 42 }
43 break; 43 break;
44 case cmsSigGrayData: 44 case cmsSigGrayData:
45 if (bDst && nComponents != 1) { 45 if (bDst && nComponents != 1) {
46 return FALSE; 46 return false;
47 } else if (!bDst && nComponents > 2) { 47 } else if (!bDst && nComponents > 2) {
48 return FALSE; 48 return false;
49 } 49 }
50 break; 50 break;
51 case cmsSigRgbData: 51 case cmsSigRgbData:
52 if (bDst && nComponents != 3) { 52 if (bDst && nComponents != 3) {
53 return FALSE; 53 return false;
54 } 54 }
55 break; 55 break;
56 case cmsSigCmykData: 56 case cmsSigCmykData:
57 if (bDst && nComponents != 4) { 57 if (bDst && nComponents != 4) {
58 return FALSE; 58 return false;
59 } 59 }
60 break; 60 break;
61 default: 61 default:
62 if (nComponents != 3) { 62 if (nComponents != 3) {
63 return FALSE; 63 return false;
64 } 64 }
65 break; 65 break;
66 } 66 }
67 return TRUE; 67 return true;
68 } 68 }
69 int32_t GetCSComponents(cmsColorSpaceSignature cs) 69 int32_t GetCSComponents(cmsColorSpaceSignature cs)
70 { 70 {
71 FX_DWORD components; 71 FX_DWORD components;
72 switch (cs) { 72 switch (cs) {
73 case cmsSigLabData: 73 case cmsSigLabData:
74 components = N_COMPONENT_LAB; 74 components = N_COMPONENT_LAB;
75 break; 75 break;
76 case cmsSigGrayData: 76 case cmsSigGrayData:
77 components = N_COMPONENT_GRAY; 77 components = N_COMPONENT_GRAY;
(...skipping 26 matching lines...) Expand all
104 if(pDstProfileData == NULL && dwDstProfileSize == 0 && nDstComponents == 3) { 104 if(pDstProfileData == NULL && dwDstProfileSize == 0 && nDstComponents == 3) {
105 dstProfile = cmsCreate_sRGBProfile(); 105 dstProfile = cmsCreate_sRGBProfile();
106 } else { 106 } else {
107 dstProfile = cmsOpenProfileFromMem((void*)pDstProfileData, dwDstProfileS ize); 107 dstProfile = cmsOpenProfileFromMem((void*)pDstProfileData, dwDstProfileS ize);
108 } 108 }
109 if (dstProfile == NULL) { 109 if (dstProfile == NULL) {
110 cmsCloseProfile(srcProfile); 110 cmsCloseProfile(srcProfile);
111 return NULL; 111 return NULL;
112 } 112 }
113 int srcFormat; 113 int srcFormat;
114 FX_BOOL bLab = FALSE; 114 bool bLab = false;
115 cmsColorSpaceSignature srcCS = cmsGetColorSpace(srcProfile); 115 cmsColorSpaceSignature srcCS = cmsGetColorSpace(srcProfile);
116 nSrcComponents = GetCSComponents(srcCS); 116 nSrcComponents = GetCSComponents(srcCS);
117 if (srcCS == cmsSigLabData) { 117 if (srcCS == cmsSigLabData) {
118 srcFormat = COLORSPACE_SH(PT_Lab) | CHANNELS_SH(nSrcComponents) | BYTES_ SH(0); 118 srcFormat = COLORSPACE_SH(PT_Lab) | CHANNELS_SH(nSrcComponents) | BYTES_ SH(0);
119 bLab = TRUE; 119 bLab = true;
120 } else { 120 } else {
121 srcFormat = COLORSPACE_SH(PT_ANY) | CHANNELS_SH(nSrcComponents) | BYTES_ SH(1); 121 srcFormat = COLORSPACE_SH(PT_ANY) | CHANNELS_SH(nSrcComponents) | BYTES_ SH(1);
122 if (srcCS == cmsSigRgbData && T_DOSWAP(dwSrcFormat)) { 122 if (srcCS == cmsSigRgbData && T_DOSWAP(dwSrcFormat)) {
123 srcFormat |= DOSWAP_SH(1); 123 srcFormat |= DOSWAP_SH(1);
124 } 124 }
125 } 125 }
126 cmsColorSpaceSignature dstCS = cmsGetColorSpace(dstProfile); 126 cmsColorSpaceSignature dstCS = cmsGetColorSpace(dstProfile);
127 if (!CheckComponents(dstCS, nDstComponents, TRUE)) { 127 if (!CheckComponents(dstCS, nDstComponents, true)) {
128 cmsCloseProfile(srcProfile); 128 cmsCloseProfile(srcProfile);
129 cmsCloseProfile(dstProfile); 129 cmsCloseProfile(dstProfile);
130 return NULL; 130 return NULL;
131 } 131 }
132 switch(dstCS) { 132 switch(dstCS) {
133 case cmsSigGrayData: 133 case cmsSigGrayData:
134 hTransform = cmsCreateTransform(srcProfile, srcFormat, dstProfile, T YPE_GRAY_8, intent, 0); 134 hTransform = cmsCreateTransform(srcProfile, srcFormat, dstProfile, T YPE_GRAY_8, intent, 0);
135 break; 135 break;
136 case cmsSigRgbData: 136 case cmsSigRgbData:
137 hTransform = cmsCreateTransform(srcProfile, srcFormat, dstProfile, T YPE_BGR_8, intent, 0); 137 hTransform = cmsCreateTransform(srcProfile, srcFormat, dstProfile, T YPE_BGR_8, intent, 0);
(...skipping 1219 matching lines...) Expand 10 before | Expand all | Expand 10 after
1357 uint8_t c1 = FXSYS_round(c * 255); 1357 uint8_t c1 = FXSYS_round(c * 255);
1358 uint8_t m1 = FXSYS_round(m * 255); 1358 uint8_t m1 = FXSYS_round(m * 255);
1359 uint8_t y1 = FXSYS_round(y * 255); 1359 uint8_t y1 = FXSYS_round(y * 255);
1360 uint8_t k1 = FXSYS_round(k * 255); 1360 uint8_t k1 = FXSYS_round(k * 255);
1361 uint8_t r, g, b; 1361 uint8_t r, g, b;
1362 AdobeCMYK_to_sRGB1(c1, m1, y1, k1, r, g, b); 1362 AdobeCMYK_to_sRGB1(c1, m1, y1, k1, r, g, b);
1363 R = 1.0f * r / 255; 1363 R = 1.0f * r / 255;
1364 G = 1.0f * g / 255; 1364 G = 1.0f * g / 255;
1365 B = 1.0f * b / 255; 1365 B = 1.0f * b / 255;
1366 } 1366 }
OLDNEW
« no previous file with comments | « core/src/fxcodec/codec/fx_codec_flate.cpp ('k') | core/src/fxcodec/codec/fx_codec_jbig.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698