summaryrefslogtreecommitdiff
path: root/core/fpdfapi/page/cpdf_colorspace.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/fpdfapi/page/cpdf_colorspace.cpp')
-rw-r--r--core/fpdfapi/page/cpdf_colorspace.cpp390
1 files changed, 158 insertions, 232 deletions
diff --git a/core/fpdfapi/page/cpdf_colorspace.cpp b/core/fpdfapi/page/cpdf_colorspace.cpp
index 6cd0075e8e..a88edb1828 100644
--- a/core/fpdfapi/page/cpdf_colorspace.cpp
+++ b/core/fpdfapi/page/cpdf_colorspace.cpp
@@ -65,14 +65,8 @@ class CPDF_CalGray : public CPDF_ColorSpace {
bool v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) override;
- bool GetRGB(FX_FLOAT* pBuf,
- FX_FLOAT& R,
- FX_FLOAT& G,
- FX_FLOAT& B) const override;
- bool SetRGB(FX_FLOAT* pBuf,
- FX_FLOAT R,
- FX_FLOAT G,
- FX_FLOAT B) const override;
+ bool GetRGB(float* pBuf, float& R, float& G, float& B) const override;
+ bool SetRGB(float* pBuf, float R, float G, float B) const override;
void TranslateImageLine(uint8_t* pDestBuf,
const uint8_t* pSrcBuf,
@@ -82,9 +76,9 @@ class CPDF_CalGray : public CPDF_ColorSpace {
bool bTransMask = false) const override;
private:
- FX_FLOAT m_WhitePoint[3];
- FX_FLOAT m_BlackPoint[3];
- FX_FLOAT m_Gamma;
+ float m_WhitePoint[3];
+ float m_BlackPoint[3];
+ float m_Gamma;
};
class CPDF_CalRGB : public CPDF_ColorSpace {
@@ -93,14 +87,8 @@ class CPDF_CalRGB : public CPDF_ColorSpace {
bool v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) override;
- bool GetRGB(FX_FLOAT* pBuf,
- FX_FLOAT& R,
- FX_FLOAT& G,
- FX_FLOAT& B) const override;
- bool SetRGB(FX_FLOAT* pBuf,
- FX_FLOAT R,
- FX_FLOAT G,
- FX_FLOAT B) const override;
+ bool GetRGB(float* pBuf, float& R, float& G, float& B) const override;
+ bool SetRGB(float* pBuf, float R, float G, float B) const override;
void TranslateImageLine(uint8_t* pDestBuf,
const uint8_t* pSrcBuf,
@@ -109,10 +97,10 @@ class CPDF_CalRGB : public CPDF_ColorSpace {
int image_height,
bool bTransMask = false) const override;
- FX_FLOAT m_WhitePoint[3];
- FX_FLOAT m_BlackPoint[3];
- FX_FLOAT m_Gamma[3];
- FX_FLOAT m_Matrix[9];
+ float m_WhitePoint[3];
+ float m_BlackPoint[3];
+ float m_Gamma[3];
+ float m_Matrix[9];
bool m_bGamma;
bool m_bMatrix;
};
@@ -124,17 +112,11 @@ class CPDF_LabCS : public CPDF_ColorSpace {
bool v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) override;
void GetDefaultValue(int iComponent,
- FX_FLOAT& value,
- FX_FLOAT& min,
- FX_FLOAT& max) const override;
- bool GetRGB(FX_FLOAT* pBuf,
- FX_FLOAT& R,
- FX_FLOAT& G,
- FX_FLOAT& B) const override;
- bool SetRGB(FX_FLOAT* pBuf,
- FX_FLOAT R,
- FX_FLOAT G,
- FX_FLOAT B) const override;
+ float& value,
+ float& min,
+ float& max) const override;
+ bool GetRGB(float* pBuf, float& R, float& G, float& B) const override;
+ bool SetRGB(float* pBuf, float R, float G, float B) const override;
void TranslateImageLine(uint8_t* pDestBuf,
const uint8_t* pSrcBuf,
@@ -143,9 +125,9 @@ class CPDF_LabCS : public CPDF_ColorSpace {
int image_height,
bool bTransMask = false) const override;
- FX_FLOAT m_WhitePoint[3];
- FX_FLOAT m_BlackPoint[3];
- FX_FLOAT m_Ranges[4];
+ float m_WhitePoint[3];
+ float m_BlackPoint[3];
+ float m_Ranges[4];
};
class CPDF_ICCBasedCS : public CPDF_ColorSpace {
@@ -155,20 +137,14 @@ class CPDF_ICCBasedCS : public CPDF_ColorSpace {
bool v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) override;
- bool GetRGB(FX_FLOAT* pBuf,
- FX_FLOAT& R,
- FX_FLOAT& G,
- FX_FLOAT& B) const override;
- bool SetRGB(FX_FLOAT* pBuf,
- FX_FLOAT R,
- FX_FLOAT G,
- FX_FLOAT B) const override;
-
- bool v_GetCMYK(FX_FLOAT* pBuf,
- FX_FLOAT& c,
- FX_FLOAT& m,
- FX_FLOAT& y,
- FX_FLOAT& k) const override;
+ bool GetRGB(float* pBuf, float& R, float& G, float& B) const override;
+ bool SetRGB(float* pBuf, float R, float G, float B) const override;
+
+ bool v_GetCMYK(float* pBuf,
+ float& c,
+ float& m,
+ float& y,
+ float& k) const override;
void EnableStdConversion(bool bEnabled) override;
void TranslateImageLine(uint8_t* pDestBuf,
@@ -181,7 +157,7 @@ class CPDF_ICCBasedCS : public CPDF_ColorSpace {
CFX_MaybeOwned<CPDF_ColorSpace> m_pAlterCS;
CPDF_IccProfile* m_pProfile;
uint8_t* m_pCache;
- FX_FLOAT* m_pRanges;
+ float* m_pRanges;
};
class CPDF_IndexedCS : public CPDF_ColorSpace {
@@ -191,10 +167,7 @@ class CPDF_IndexedCS : public CPDF_ColorSpace {
bool v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) override;
- bool GetRGB(FX_FLOAT* pBuf,
- FX_FLOAT& R,
- FX_FLOAT& G,
- FX_FLOAT& B) const override;
+ bool GetRGB(float* pBuf, float& R, float& G, float& B) const override;
CPDF_ColorSpace* GetBaseCS() const override;
void EnableStdConversion(bool bEnabled) override;
@@ -204,7 +177,7 @@ class CPDF_IndexedCS : public CPDF_ColorSpace {
int m_nBaseComponents;
int m_MaxIndex;
CFX_ByteString m_Table;
- FX_FLOAT* m_pCompMinMax;
+ float* m_pCompMinMax;
};
class CPDF_SeparationCS : public CPDF_ColorSpace {
@@ -214,14 +187,11 @@ class CPDF_SeparationCS : public CPDF_ColorSpace {
// CPDF_ColorSpace:
void GetDefaultValue(int iComponent,
- FX_FLOAT& value,
- FX_FLOAT& min,
- FX_FLOAT& max) const override;
+ float& value,
+ float& min,
+ float& max) const override;
bool v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) override;
- bool GetRGB(FX_FLOAT* pBuf,
- FX_FLOAT& R,
- FX_FLOAT& G,
- FX_FLOAT& B) const override;
+ bool GetRGB(float* pBuf, float& R, float& G, float& B) const override;
void EnableStdConversion(bool bEnabled) override;
std::unique_ptr<CPDF_ColorSpace> m_pAltCS;
@@ -236,21 +206,18 @@ class CPDF_DeviceNCS : public CPDF_ColorSpace {
// CPDF_ColorSpace:
void GetDefaultValue(int iComponent,
- FX_FLOAT& value,
- FX_FLOAT& min,
- FX_FLOAT& max) const override;
+ float& value,
+ float& min,
+ float& max) const override;
bool v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) override;
- bool GetRGB(FX_FLOAT* pBuf,
- FX_FLOAT& R,
- FX_FLOAT& G,
- FX_FLOAT& B) const override;
+ bool GetRGB(float* pBuf, float& R, float& G, float& B) const override;
void EnableStdConversion(bool bEnabled) override;
std::unique_ptr<CPDF_ColorSpace> m_pAltCS;
std::unique_ptr<CPDF_Function> m_pFunc;
};
-FX_FLOAT RGB_Conversion(FX_FLOAT colorComponent) {
+float RGB_Conversion(float colorComponent) {
if (colorComponent > 1)
colorComponent = 1;
if (colorComponent < 0)
@@ -266,36 +233,31 @@ FX_FLOAT RGB_Conversion(FX_FLOAT colorComponent) {
return colorComponent;
}
-void XYZ_to_sRGB(FX_FLOAT X,
- FX_FLOAT Y,
- FX_FLOAT Z,
- FX_FLOAT& R,
- FX_FLOAT& G,
- FX_FLOAT& B) {
- FX_FLOAT R1 = 3.2410f * X - 1.5374f * Y - 0.4986f * Z;
- FX_FLOAT G1 = -0.9692f * X + 1.8760f * Y + 0.0416f * Z;
- FX_FLOAT B1 = 0.0556f * X - 0.2040f * Y + 1.0570f * Z;
+void XYZ_to_sRGB(float X, float Y, float Z, float& R, float& G, float& B) {
+ float R1 = 3.2410f * X - 1.5374f * Y - 0.4986f * Z;
+ float G1 = -0.9692f * X + 1.8760f * Y + 0.0416f * Z;
+ float B1 = 0.0556f * X - 0.2040f * Y + 1.0570f * Z;
R = RGB_Conversion(R1);
G = RGB_Conversion(G1);
B = RGB_Conversion(B1);
}
-void XYZ_to_sRGB_WhitePoint(FX_FLOAT X,
- FX_FLOAT Y,
- FX_FLOAT Z,
- FX_FLOAT& R,
- FX_FLOAT& G,
- FX_FLOAT& B,
- FX_FLOAT Xw,
- FX_FLOAT Yw,
- FX_FLOAT Zw) {
+void XYZ_to_sRGB_WhitePoint(float X,
+ float Y,
+ float Z,
+ float& R,
+ float& G,
+ float& B,
+ float Xw,
+ float Yw,
+ float Zw) {
// The following RGB_xyz is based on
// sRGB value {Rx,Ry}={0.64, 0.33}, {Gx,Gy}={0.30, 0.60}, {Bx,By}={0.15, 0.06}
- FX_FLOAT Rx = 0.64f, Ry = 0.33f;
- FX_FLOAT Gx = 0.30f, Gy = 0.60f;
- FX_FLOAT Bx = 0.15f, By = 0.06f;
+ float Rx = 0.64f, Ry = 0.33f;
+ float Gx = 0.30f, Gy = 0.60f;
+ float Bx = 0.15f, By = 0.06f;
CFX_Matrix_3by3 RGB_xyz(Rx, Gx, Bx, Ry, Gy, By, 1 - Rx - Ry, 1 - Gx - Gy,
1 - Bx - By);
CFX_Vector_3by1 whitePoint(Xw, Yw, Zw);
@@ -411,13 +373,13 @@ int CPDF_ColorSpace::GetBufSize() const {
if (m_Family == PDFCS_PATTERN) {
return sizeof(PatternValue);
}
- return m_nComponents * sizeof(FX_FLOAT);
+ return m_nComponents * sizeof(float);
}
-FX_FLOAT* CPDF_ColorSpace::CreateBuf() {
+float* CPDF_ColorSpace::CreateBuf() {
int size = GetBufSize();
uint8_t* pBuf = FX_Alloc(uint8_t, size);
- return (FX_FLOAT*)pBuf;
+ return (float*)pBuf;
}
bool CPDF_ColorSpace::sRGB() const {
@@ -431,22 +393,19 @@ bool CPDF_ColorSpace::sRGB() const {
return pCS->m_pProfile->m_bsRGB;
}
-bool CPDF_ColorSpace::SetRGB(FX_FLOAT* pBuf,
- FX_FLOAT R,
- FX_FLOAT G,
- FX_FLOAT B) const {
+bool CPDF_ColorSpace::SetRGB(float* pBuf, float R, float G, float B) const {
return false;
}
-bool CPDF_ColorSpace::GetCMYK(FX_FLOAT* pBuf,
- FX_FLOAT& c,
- FX_FLOAT& m,
- FX_FLOAT& y,
- FX_FLOAT& k) const {
+bool CPDF_ColorSpace::GetCMYK(float* pBuf,
+ float& c,
+ float& m,
+ float& y,
+ float& k) const {
if (v_GetCMYK(pBuf, c, m, y, k)) {
return true;
}
- FX_FLOAT R, G, B;
+ float R, G, B;
if (!GetRGB(pBuf, R, G, B)) {
return false;
}
@@ -454,24 +413,24 @@ bool CPDF_ColorSpace::GetCMYK(FX_FLOAT* pBuf,
return true;
}
-bool CPDF_ColorSpace::SetCMYK(FX_FLOAT* pBuf,
- FX_FLOAT c,
- FX_FLOAT m,
- FX_FLOAT y,
- FX_FLOAT k) const {
+bool CPDF_ColorSpace::SetCMYK(float* pBuf,
+ float c,
+ float m,
+ float y,
+ float k) const {
if (v_SetCMYK(pBuf, c, m, y, k)) {
return true;
}
- FX_FLOAT R, G, B;
+ float R, G, B;
AdobeCMYK_to_sRGB(c, m, y, k, R, G, B);
return SetRGB(pBuf, R, G, B);
}
-void CPDF_ColorSpace::GetDefaultColor(FX_FLOAT* buf) const {
+void CPDF_ColorSpace::GetDefaultColor(float* buf) const {
if (!buf || m_Family == PDFCS_PATTERN) {
return;
}
- FX_FLOAT min, max;
+ float min, max;
for (uint32_t i = 0; i < m_nComponents; i++) {
GetDefaultValue(i, buf[i], min, max);
}
@@ -482,9 +441,9 @@ uint32_t CPDF_ColorSpace::CountComponents() const {
}
void CPDF_ColorSpace::GetDefaultValue(int iComponent,
- FX_FLOAT& value,
- FX_FLOAT& min,
- FX_FLOAT& max) const {
+ float& value,
+ float& min,
+ float& max) const {
value = 0;
min = 0;
max = 1.0f;
@@ -496,15 +455,15 @@ void CPDF_ColorSpace::TranslateImageLine(uint8_t* dest_buf,
int image_width,
int image_height,
bool bTransMask) const {
- CFX_FixedBufGrow<FX_FLOAT, 16> srcbuf(m_nComponents);
- FX_FLOAT* src = srcbuf;
- FX_FLOAT R, G, B;
+ CFX_FixedBufGrow<float, 16> srcbuf(m_nComponents);
+ float* src = srcbuf;
+ float R, G, B;
for (int i = 0; i < pixels; i++) {
for (uint32_t j = 0; j < m_nComponents; j++)
if (m_Family == PDFCS_INDEXED) {
- src[j] = (FX_FLOAT)(*src_buf++);
+ src[j] = (float)(*src_buf++);
} else {
- src[j] = (FX_FLOAT)(*src_buf++) / 255;
+ src[j] = (float)(*src_buf++) / 255;
}
GetRGB(src, R, G, B);
*dest_buf++ = (int32_t)(B * 255);
@@ -539,19 +498,19 @@ bool CPDF_ColorSpace::v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) {
return true;
}
-bool CPDF_ColorSpace::v_GetCMYK(FX_FLOAT* pBuf,
- FX_FLOAT& c,
- FX_FLOAT& m,
- FX_FLOAT& y,
- FX_FLOAT& k) const {
+bool CPDF_ColorSpace::v_GetCMYK(float* pBuf,
+ float& c,
+ float& m,
+ float& y,
+ float& k) const {
return false;
}
-bool CPDF_ColorSpace::v_SetCMYK(FX_FLOAT* pBuf,
- FX_FLOAT c,
- FX_FLOAT m,
- FX_FLOAT y,
- FX_FLOAT k) const {
+bool CPDF_ColorSpace::v_SetCMYK(float* pBuf,
+ float c,
+ float m,
+ float y,
+ float k) const {
return false;
}
@@ -578,18 +537,12 @@ bool CPDF_CalGray::v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) {
return true;
}
-bool CPDF_CalGray::GetRGB(FX_FLOAT* pBuf,
- FX_FLOAT& R,
- FX_FLOAT& G,
- FX_FLOAT& B) const {
+bool CPDF_CalGray::GetRGB(float* pBuf, float& R, float& G, float& B) const {
R = G = B = *pBuf;
return true;
}
-bool CPDF_CalGray::SetRGB(FX_FLOAT* pBuf,
- FX_FLOAT R,
- FX_FLOAT G,
- FX_FLOAT B) const {
+bool CPDF_CalGray::SetRGB(float* pBuf, float R, float G, float B) const {
if (R == G && R == B) {
*pBuf = R;
return true;
@@ -647,22 +600,19 @@ bool CPDF_CalRGB::v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) {
return true;
}
-bool CPDF_CalRGB::GetRGB(FX_FLOAT* pBuf,
- FX_FLOAT& R,
- FX_FLOAT& G,
- FX_FLOAT& B) const {
- FX_FLOAT A_ = pBuf[0];
- FX_FLOAT B_ = pBuf[1];
- FX_FLOAT C_ = pBuf[2];
+bool CPDF_CalRGB::GetRGB(float* pBuf, float& R, float& G, float& B) const {
+ float A_ = pBuf[0];
+ float B_ = pBuf[1];
+ float C_ = pBuf[2];
if (m_bGamma) {
- A_ = (FX_FLOAT)FXSYS_pow(A_, m_Gamma[0]);
- B_ = (FX_FLOAT)FXSYS_pow(B_, m_Gamma[1]);
- C_ = (FX_FLOAT)FXSYS_pow(C_, m_Gamma[2]);
+ A_ = (float)FXSYS_pow(A_, m_Gamma[0]);
+ B_ = (float)FXSYS_pow(B_, m_Gamma[1]);
+ C_ = (float)FXSYS_pow(C_, m_Gamma[2]);
}
- FX_FLOAT X;
- FX_FLOAT Y;
- FX_FLOAT Z;
+ float X;
+ float Y;
+ float Z;
if (m_bMatrix) {
X = m_Matrix[0] * A_ + m_Matrix[3] * B_ + m_Matrix[6] * C_;
Y = m_Matrix[1] * A_ + m_Matrix[4] * B_ + m_Matrix[7] * C_;
@@ -677,10 +627,7 @@ bool CPDF_CalRGB::GetRGB(FX_FLOAT* pBuf,
return true;
}
-bool CPDF_CalRGB::SetRGB(FX_FLOAT* pBuf,
- FX_FLOAT R,
- FX_FLOAT G,
- FX_FLOAT B) const {
+bool CPDF_CalRGB::SetRGB(float* pBuf, float R, float G, float B) const {
pBuf[0] = R;
pBuf[1] = G;
pBuf[2] = B;
@@ -694,14 +641,14 @@ void CPDF_CalRGB::TranslateImageLine(uint8_t* pDestBuf,
int image_height,
bool bTransMask) const {
if (bTransMask) {
- FX_FLOAT Cal[3];
- FX_FLOAT R;
- FX_FLOAT G;
- FX_FLOAT B;
+ float Cal[3];
+ float R;
+ float G;
+ float B;
for (int i = 0; i < pixels; i++) {
- Cal[0] = ((FX_FLOAT)pSrcBuf[2]) / 255;
- Cal[1] = ((FX_FLOAT)pSrcBuf[1]) / 255;
- Cal[2] = ((FX_FLOAT)pSrcBuf[0]) / 255;
+ Cal[0] = ((float)pSrcBuf[2]) / 255;
+ Cal[1] = ((float)pSrcBuf[1]) / 255;
+ Cal[2] = ((float)pSrcBuf[0]) / 255;
GetRGB(Cal, R, G, B);
pDestBuf[0] = FXSYS_round(B * 255);
pDestBuf[1] = FXSYS_round(G * 255);
@@ -717,9 +664,9 @@ CPDF_LabCS::CPDF_LabCS(CPDF_Document* pDoc)
: CPDF_ColorSpace(pDoc, PDFCS_LAB, 3) {}
void CPDF_LabCS::GetDefaultValue(int iComponent,
- FX_FLOAT& value,
- FX_FLOAT& min,
- FX_FLOAT& max) const {
+ float& value,
+ float& min,
+ float& max) const {
ASSERT(iComponent < 3);
value = 0;
if (iComponent == 0) {
@@ -750,24 +697,21 @@ bool CPDF_LabCS::v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) {
m_BlackPoint[i] = pParam ? pParam->GetNumberAt(i) : 0;
pParam = pDict->GetArrayFor("Range");
- const FX_FLOAT def_ranges[4] = {-100 * 1.0f, 100 * 1.0f, -100 * 1.0f,
- 100 * 1.0f};
+ const float def_ranges[4] = {-100 * 1.0f, 100 * 1.0f, -100 * 1.0f,
+ 100 * 1.0f};
for (i = 0; i < 4; i++)
m_Ranges[i] = pParam ? pParam->GetNumberAt(i) : def_ranges[i];
return true;
}
-bool CPDF_LabCS::GetRGB(FX_FLOAT* pBuf,
- FX_FLOAT& R,
- FX_FLOAT& G,
- FX_FLOAT& B) const {
- FX_FLOAT Lstar = pBuf[0];
- FX_FLOAT astar = pBuf[1];
- FX_FLOAT bstar = pBuf[2];
- FX_FLOAT M = (Lstar + 16.0f) / 116.0f;
- FX_FLOAT L = M + astar / 500.0f;
- FX_FLOAT N = M - bstar / 200.0f;
- FX_FLOAT X, Y, Z;
+bool CPDF_LabCS::GetRGB(float* pBuf, float& R, float& G, float& B) const {
+ float Lstar = pBuf[0];
+ float astar = pBuf[1];
+ float bstar = pBuf[2];
+ float M = (Lstar + 16.0f) / 116.0f;
+ float L = M + astar / 500.0f;
+ float N = M - bstar / 200.0f;
+ float X, Y, Z;
if (L < 0.2069f)
X = 0.957f * 0.12842f * (L - 0.1379f);
else
@@ -787,10 +731,7 @@ bool CPDF_LabCS::GetRGB(FX_FLOAT* pBuf,
return true;
}
-bool CPDF_LabCS::SetRGB(FX_FLOAT* pBuf,
- FX_FLOAT R,
- FX_FLOAT G,
- FX_FLOAT B) const {
+bool CPDF_LabCS::SetRGB(float* pBuf, float R, float G, float B) const {
return false;
}
@@ -801,11 +742,11 @@ void CPDF_LabCS::TranslateImageLine(uint8_t* pDestBuf,
int image_height,
bool bTransMask) const {
for (int i = 0; i < pixels; i++) {
- FX_FLOAT lab[3];
- FX_FLOAT R, G, B;
+ float lab[3];
+ float R, G, B;
lab[0] = (pSrcBuf[0] * 100 / 255.0f);
- lab[1] = (FX_FLOAT)(pSrcBuf[1] - 128);
- lab[2] = (FX_FLOAT)(pSrcBuf[2] - 128);
+ lab[1] = (float)(pSrcBuf[1] - 128);
+ lab[2] = (float)(pSrcBuf[2] - 128);
GetRGB(lab, R, G, B);
pDestBuf[0] = (int32_t)(B * 255);
pDestBuf[1] = (int32_t)(G * 255);
@@ -875,7 +816,7 @@ bool CPDF_ICCBasedCS::v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) {
}
}
CPDF_Array* pRanges = pDict->GetArrayFor("Range");
- m_pRanges = FX_Alloc2D(FX_FLOAT, m_nComponents, 2);
+ m_pRanges = FX_Alloc2D(float, m_nComponents, 2);
for (uint32_t i = 0; i < m_nComponents * 2; i++) {
if (pRanges)
m_pRanges[i] = pRanges->GetNumberAt(i);
@@ -887,10 +828,7 @@ bool CPDF_ICCBasedCS::v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) {
return true;
}
-bool CPDF_ICCBasedCS::GetRGB(FX_FLOAT* pBuf,
- FX_FLOAT& R,
- FX_FLOAT& G,
- FX_FLOAT& B) const {
+bool CPDF_ICCBasedCS::GetRGB(float* pBuf, float& R, float& G, float& B) const {
if (m_pProfile && m_pProfile->m_bsRGB) {
R = pBuf[0];
G = pBuf[1];
@@ -907,7 +845,7 @@ bool CPDF_ICCBasedCS::GetRGB(FX_FLOAT* pBuf,
B = 0.0f;
return true;
}
- FX_FLOAT rgb[3];
+ float rgb[3];
pIccModule->SetComponents(m_nComponents);
pIccModule->Translate(m_pProfile->m_pTransform, pBuf, rgb);
R = rgb[0];
@@ -916,18 +854,15 @@ bool CPDF_ICCBasedCS::GetRGB(FX_FLOAT* pBuf,
return true;
}
-bool CPDF_ICCBasedCS::SetRGB(FX_FLOAT* pBuf,
- FX_FLOAT R,
- FX_FLOAT G,
- FX_FLOAT B) const {
+bool CPDF_ICCBasedCS::SetRGB(float* pBuf, float R, float G, float B) const {
return false;
}
-bool CPDF_ICCBasedCS::v_GetCMYK(FX_FLOAT* pBuf,
- FX_FLOAT& c,
- FX_FLOAT& m,
- FX_FLOAT& y,
- FX_FLOAT& k) const {
+bool CPDF_ICCBasedCS::v_GetCMYK(float* pBuf,
+ float& c,
+ float& m,
+ float& y,
+ float& k) const {
if (m_nComponents != 4)
return false;
@@ -1025,8 +960,8 @@ bool CPDF_IndexedCS::v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) {
}
m_pCountedBaseCS = pDocPageData->FindColorSpacePtr(m_pBaseCS->GetArray());
m_nBaseComponents = m_pBaseCS->CountComponents();
- m_pCompMinMax = FX_Alloc2D(FX_FLOAT, m_nBaseComponents, 2);
- FX_FLOAT defvalue;
+ m_pCompMinMax = FX_Alloc2D(float, m_nBaseComponents, 2);
+ float defvalue;
for (int i = 0; i < m_nBaseComponents; i++) {
m_pBaseCS->GetDefaultValue(i, defvalue, m_pCompMinMax[i * 2],
m_pCompMinMax[i * 2 + 1]);
@@ -1048,10 +983,7 @@ bool CPDF_IndexedCS::v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) {
return true;
}
-bool CPDF_IndexedCS::GetRGB(FX_FLOAT* pBuf,
- FX_FLOAT& R,
- FX_FLOAT& G,
- FX_FLOAT& B) const {
+bool CPDF_IndexedCS::GetRGB(float* pBuf, float& R, float& G, float& B) const {
int index = (int32_t)(*pBuf);
if (index < 0 || index > m_MaxIndex) {
return false;
@@ -1063,8 +995,8 @@ bool CPDF_IndexedCS::GetRGB(FX_FLOAT* pBuf,
return false;
}
}
- CFX_FixedBufGrow<FX_FLOAT, 16> Comps(m_nBaseComponents);
- FX_FLOAT* comps = Comps;
+ CFX_FixedBufGrow<float, 16> Comps(m_nBaseComponents);
+ float* comps = Comps;
const uint8_t* pTable = m_Table.raw_str();
for (int i = 0; i < m_nBaseComponents; i++) {
comps[i] =
@@ -1119,10 +1051,7 @@ bool CPDF_PatternCS::v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) {
return true;
}
-bool CPDF_PatternCS::GetRGB(FX_FLOAT* pBuf,
- FX_FLOAT& R,
- FX_FLOAT& G,
- FX_FLOAT& B) const {
+bool CPDF_PatternCS::GetRGB(float* pBuf, float& R, float& G, float& B) const {
if (m_pBaseCS) {
ASSERT(m_pBaseCS->GetFamily() != PDFCS_PATTERN);
PatternValue* pvalue = (PatternValue*)pBuf;
@@ -1144,9 +1073,9 @@ CPDF_SeparationCS::CPDF_SeparationCS(CPDF_Document* pDoc)
CPDF_SeparationCS::~CPDF_SeparationCS() {}
void CPDF_SeparationCS::GetDefaultValue(int iComponent,
- FX_FLOAT& value,
- FX_FLOAT& min,
- FX_FLOAT& max) const {
+ float& value,
+ float& min,
+ float& max) const {
value = 1.0f;
min = 0;
max = 1.0f;
@@ -1177,10 +1106,10 @@ bool CPDF_SeparationCS::v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) {
return true;
}
-bool CPDF_SeparationCS::GetRGB(FX_FLOAT* pBuf,
- FX_FLOAT& R,
- FX_FLOAT& G,
- FX_FLOAT& B) const {
+bool CPDF_SeparationCS::GetRGB(float* pBuf,
+ float& R,
+ float& G,
+ float& B) const {
if (m_Type == None)
return false;
@@ -1189,13 +1118,13 @@ bool CPDF_SeparationCS::GetRGB(FX_FLOAT* pBuf,
return false;
int nComps = m_pAltCS->CountComponents();
- CFX_FixedBufGrow<FX_FLOAT, 16> results(nComps);
+ CFX_FixedBufGrow<float, 16> results(nComps);
for (int i = 0; i < nComps; i++)
results[i] = *pBuf;
return m_pAltCS->GetRGB(results, R, G, B);
}
- CFX_FixedBufGrow<FX_FLOAT, 16> results(m_pFunc->CountOutputs());
+ CFX_FixedBufGrow<float, 16> results(m_pFunc->CountOutputs());
int nresults = 0;
m_pFunc->Call(pBuf, 1, results, nresults);
if (nresults == 0)
@@ -1222,9 +1151,9 @@ CPDF_DeviceNCS::CPDF_DeviceNCS(CPDF_Document* pDoc)
CPDF_DeviceNCS::~CPDF_DeviceNCS() {}
void CPDF_DeviceNCS::GetDefaultValue(int iComponent,
- FX_FLOAT& value,
- FX_FLOAT& min,
- FX_FLOAT& max) const {
+ float& value,
+ float& min,
+ float& max) const {
value = 1.0f;
min = 0;
max = 1.0f;
@@ -1248,14 +1177,11 @@ bool CPDF_DeviceNCS::v_Load(CPDF_Document* pDoc, CPDF_Array* pArray) {
return m_pFunc->CountOutputs() >= m_pAltCS->CountComponents();
}
-bool CPDF_DeviceNCS::GetRGB(FX_FLOAT* pBuf,
- FX_FLOAT& R,
- FX_FLOAT& G,
- FX_FLOAT& B) const {
+bool CPDF_DeviceNCS::GetRGB(float* pBuf, float& R, float& G, float& B) const {
if (!m_pFunc)
return false;
- CFX_FixedBufGrow<FX_FLOAT, 16> results(m_pFunc->CountOutputs());
+ CFX_FixedBufGrow<float, 16> results(m_pFunc->CountOutputs());
int nresults = 0;
m_pFunc->Call(pBuf, m_nComponents, results, nresults);
if (nresults == 0)