本文整理汇总了C++中ScColor::getLab方法的典型用法代码示例。如果您正苦于以下问题:C++ ScColor::getLab方法的具体用法?C++ ScColor::getLab怎么用?C++ ScColor::getLab使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ScColor
的用法示例。
在下文中一共展示了ScColor::getLab方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: if
static quint64 code64(const ScColor & col)
{
int C = 0;
int M = 0;
int Y = 0;
int K = 0;
int R = 0;
int G = 0;
int B = 0;
quint64 result = 0;
if (col.getColorModel() == colorModelRGB)
{
col.getRGB( &R, &G, &B );
QColor color = QColor(R, G, B);
color.getCmyk(&C, &M, &Y, &K);
}
else if (col.getColorModel() == colorModelCMYK)
{
col.getCMYK( &C, &M, &Y, &K );
R = 255-qMin(255, C + K);
G = 255-qMin(255, M + K);
B = 255-qMin(255, Y + K);
}
else
{
double L, a, b;
col.getLab(&L, &a, &b);
R = qRound(L);
G = qRound(a);
B = qRound(b);
}
result |= col.getColorModel() == colorModelRGB ? 1 : 0;
result |= col.isSpotColor() ? 64 : 0;
result |= col.isRegistrationColor() ? 32 : 0;
result <<= 8;
result |= C;
result <<= 8;
result |= M;
result <<= 8;
result |= Y;
result <<= 8;
result |= K;
result <<= 8;
result |= R;
result <<= 8;
result |= G;
result <<= 8;
result |= B;
return result;
}