本文整理汇总了C++中ScColor::fromQColor方法的典型用法代码示例。如果您正苦于以下问题:C++ ScColor::fromQColor方法的具体用法?C++ ScColor::fromQColor怎么用?C++ ScColor::fromQColor使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ScColor
的用法示例。
在下文中一共展示了ScColor::fromQColor方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: makeMonochromatic
void ColorWheel::makeMonochromatic()
{
baseColor();
QColor col(ScColorEngine::getRGBColor(actualColor, currentDoc));
ScColor l;
l.fromQColor(col.light());
l = ScColorEngine::convertToModel(l, currentDoc, currentColorSpace);
colorList[tr("Monochromatic Light")] = l;
l.fromQColor(col.dark());
l = ScColorEngine::convertToModel(l, currentDoc, currentColorSpace);
colorList[tr("Monochromatic Dark")] = l;
currentType = Monochromatic;
}
示例2: ScColor
void CMYKChoose::setColor2(int h, int s, bool ende)
{
ScColor tmp;
if (Farbe.getColorModel() == colorModelLab)
{
if (isHLC)
tmp = ScColor(MagentaSp->value(), static_cast<double>(h), static_cast<double>(s));
else
tmp = ScColor(CyanSp->value(), static_cast<double>(h), static_cast<double>(s));
}
else
{
QColor tm = QColor::fromHsv(qMax(qMin(359,h),0), qMax(qMin(255,255-s),0), 255-BlackComp, QColor::Hsv);
int r, g, b;
tm.getRgb(&r, &g, &b);
tmp.fromQColor(tm);
if (Farbe.getColorModel() == colorModelCMYK)
{
CMYKColor cmyk;
ScColorEngine::getCMYKValues(tmp, m_doc, cmyk);
tmp.setColor(cmyk.c, cmyk.m, cmyk.y, cmyk.k);
}
}
imageN.fill( ScColorEngine::getDisplayColor(tmp, m_doc) );
if ( ScColorEngine::isOutOfGamut(tmp, m_doc) )
paintAlert(alertIcon, imageN, 2, 2, false);
NewC->setPixmap( imageN );
Farbe = tmp;
if (ende)
setValues();
}
示例3: QLabel
ColorWheel::ColorWheel(QWidget * parent, const char * name) : QLabel(parent)
{
setObjectName(name);
pointList.clear();
currentDoc = NULL;
currentColorSpace = colorModelRGB;
baseAngle = 0;
angleShift = 270;
widthH = heightH = 150;
// create color map
colorMap.clear();
// fit the colorMap 1st value with matrix beginning
int mapIndex = angleShift;
for (int i = 0; i < 360; ++i)
{
QColor c;
c.setHsv(i, 255, 255);
ScColor col;
col.fromQColor(c);
colorMap[mapIndex++] = col;
if (mapIndex > 359)
mapIndex = 0;
}
actualColor = colorMap[0];
trBaseColor = tr("Base Color");
}
示例4: colorSpaceColor
ScColor ColorWheel::colorSpaceColor(ScColor col)
{
QColor newcol;
ScColor ret;
int h, s, v;
ScColorEngine::getRGBColor(col, currentDoc).getHsv(&h, &s, &v);
newcol.setHsv(h, s, v);
ret.fromQColor(newcol);
ret = ScColorEngine::convertToModel(ret, currentDoc, currentColorSpace);
return ret;
}
示例5: processColor
QString SmlPlug::processColor(QDomElement &elem)
{
QString colnam = elem.attribute("color","#ffffff");
QColor stroke;
stroke.setNamedColor("#"+colnam.right(6));
ScColor tmp;
tmp.fromQColor(stroke);
tmp.setSpotColor(false);
tmp.setRegistrationColor(false);
QString newColorName = "FromSML"+tmp.name();
QString fNam = m_Doc->PageColors.tryAddColor(newColorName, tmp);
if (fNam == newColorName)
importedColors.append(newColorName);
return fNam;
}
示例6: handleOldColorShade
void handleOldColorShade(ScribusDoc* doc, QString& colName, int& shade)
{
int r, g, b;
bool found = false;
if( colName.isEmpty() || colName == CommonStrings::None || !doc->PageColors.contains(colName))
return;
const ScColor& scCol1(doc->PageColors[colName]);
if( (shade == 100) || (scCol1.getColorModel() != colorModelRGB) )
return;
scCol1.getRGB(&r, &g, &b);
QColor col1 = getOldColorShade(r, g, b, shade), col2;
ColorList::Iterator it, itEnd = doc->PageColors.end();
for( it = doc->PageColors.begin(); it != itEnd; it++)
{
if ( it.value().getColorModel() == colorModelRGB )
{
it.value().getRGB(&r, &g, &b);
col2.setRgb(r, g, b);
if( col1 == col2 )
{
found = true;
break;
}
}
}
if(!found)
{
ScColor tmp;
tmp.fromQColor(col1);
colName = QString("%1 %2%").arg(colName).arg(shade);
doc->PageColors.insert(colName, tmp);
}
else
colName = it.key();
shade = 100;
}
示例7: parseColor
QString gtAction::parseColor(const QString &s)
{
QString ret = CommonStrings::None;
if (s == CommonStrings::None)
return ret; // don't want None to become Black or any color
bool found = false;
ColorList::Iterator it;
for (it = textFrame->doc()->PageColors.begin(); it != textFrame->doc()->PageColors.end(); ++it)
{
if (it.key() == s)
{
ret = it.key();
found = true;
}
}
if (!found)
{
QColor c;
if( s.startsWith( "rgb(" ) )
{
QString parse = s.trimmed();
QStringList colors = parse.split(',', QString::SkipEmptyParts);
QString r = colors[0].right( ( colors[0].length() - 4 ) );
QString g = colors[1];
QString b = colors[2].left( ( colors[2].length() - 1 ) );
if( r.contains( "%" ) )
{
r.chop(1);
r = QString::number( static_cast<int>( ( static_cast<double>( 255 * ScCLocale::toDoubleC(r) ) / 100.0 ) ) );
}
if( g.contains( "%" ) )
{
g.chop(1);
g = QString::number( static_cast<int>( ( static_cast<double>( 255 * ScCLocale::toDoubleC(g) ) / 100.0 ) ) );
}
if( b.contains( "%" ) )
{
b.chop(1);
b = QString::number( static_cast<int>( ( static_cast<double>( 255 * ScCLocale::toDoubleC(b) ) / 100.0 ) ) );
}
c = QColor(r.toInt(), g.toInt(), b.toInt());
}
else
{
QString rgbColor = s.trimmed();
if( rgbColor.startsWith( "#" ) )
c.setNamedColor( rgbColor );
else
c = parseColorN( rgbColor );
}
found = false;
for (it = textFrame->doc()->PageColors.begin(); it != textFrame->doc()->PageColors.end(); ++it)
{
if (c == ScColorEngine::getRGBColor(it.value(), textFrame->doc()))
{
ret = it.key();
found = true;
}
}
if (!found)
{
ScColor tmp;
tmp.fromQColor(c);
textFrame->doc()->PageColors.insert("FromGetText"+c.name(), tmp);
m_ScMW->propertiesPalette->updateColorList();
ret = "FromGetText"+c.name();
}
}
return ret;
}
示例8: parseGroup
void ShapePlug::parseGroup(QDomNode &DOC)
{
QString tmp = "";
QString FillCol = "White";
QString StrokeCol = "Black";
QString defFillCol = "White";
QString defStrokeCol = "Black";
QColor stroke = Qt::black;
QColor fill = Qt::white;
// Qt::PenStyle Dash = Qt::SolidLine;
Qt::PenCapStyle LineEnd = Qt::FlatCap;
Qt::PenJoinStyle LineJoin = Qt::MiterJoin;
// int fillStyle = 1;
double strokewidth = 0.1;
// bool poly = false;
while(!DOC.isNull())
{
double x1, y1, x2, y2;
StrokeCol = defStrokeCol;
FillCol = defFillCol;
stroke = Qt::black;
fill = Qt::white;
// fillStyle = 1;
strokewidth = 1.0;
// Dash = Qt::SolidLine;
LineEnd = Qt::FlatCap;
LineJoin = Qt::MiterJoin;
FPointArray PoLine;
PoLine.resize(0);
QDomElement pg = DOC.toElement();
QString STag = pg.tagName();
QString style = pg.attribute( "style", "" ).simplified();
if (style.isEmpty())
style = pg.attribute( "svg:style", "" ).simplified();
QStringList substyles = style.split(';', QString::SkipEmptyParts);
for( QStringList::Iterator it = substyles.begin(); it != substyles.end(); ++it )
{
QStringList substyle = (*it).split(':', QString::SkipEmptyParts);
QString command(substyle[0].trimmed());
QString params(substyle[1].trimmed());
if (command == "fill")
{
if (!((params == "foreground") || (params == "background") || (params == "fg") || (params == "bg") || (params == "none") || (params == "default") || (params == "inverse")))
{
if (params == "nofill")
FillCol = CommonStrings::None;
else
{
fill.setNamedColor( params );
FillCol = "FromDia"+fill.name();
ScColor tmp;
tmp.fromQColor(fill);
tmp.setSpotColor(false);
tmp.setRegistrationColor(false);
QString fNam = m_Doc->PageColors.tryAddColor(FillCol, tmp);
if (fNam == FillCol)
importedColors.append(FillCol);
FillCol = fNam;
}
}
}
else if (command == "stroke")
{
if (!((params == "foreground") || (params == "background") || (params == "fg") || (params == "bg") || (params == "none") || (params == "default")) || (params == "inverse"))
{
stroke.setNamedColor( params );
StrokeCol = "FromDia"+stroke.name();
ScColor tmp;
tmp.fromQColor(stroke);
tmp.setSpotColor(false);
tmp.setRegistrationColor(false);
QString fNam = m_Doc->PageColors.tryAddColor(StrokeCol, tmp);
if (fNam == StrokeCol)
importedColors.append(StrokeCol);
StrokeCol = fNam;
}
}
else if (command == "stroke-width")
strokewidth = ScCLocale::toDoubleC(params);
else if( command == "stroke-linejoin" )
{
if( params == "miter" )
LineJoin = Qt::MiterJoin;
else if( params == "round" )
LineJoin = Qt::RoundJoin;
else if( params == "bevel" )
LineJoin = Qt::BevelJoin;
}
else if( command == "stroke-linecap" )
{
if( params == "butt" )
LineEnd = Qt::FlatCap;
else if( params == "round" )
LineEnd = Qt::RoundCap;
else if( params == "square" )
LineEnd = Qt::SquareCap;
}
}
if (STag == "svg:line")
{
//.........这里部分代码省略.........
示例9: initialiseDefaultPrefs
void ColorSetManager::initialiseDefaultPrefs(struct ApplicationPrefs& appPrefs)
{
QString defaultSwatch = ScPaths::instance().shareDir() + "swatches/" + "Scribus_Basic.xml";
QFile fiC(defaultSwatch);
if (!fiC.exists())
{
appPrefs.colorPrefs.DColors.insert("White", ScColor(0, 0, 0, 0));
appPrefs.colorPrefs.DColors.insert("Black", ScColor(0, 0, 0, 255));
ScColor cc = ScColor(255, 255, 255, 255);
cc.setRegistrationColor(true);
appPrefs.colorPrefs.DColors.insert("Registration", cc);
appPrefs.colorPrefs.DColors.insert("Blue", ScColor(255, 255, 0, 0));
appPrefs.colorPrefs.DColors.insert("Cyan", ScColor(255, 0, 0, 0));
appPrefs.colorPrefs.DColors.insert("Green", ScColor(255, 0, 255, 0));
appPrefs.colorPrefs.DColors.insert("Red", ScColor(0, 255, 255, 0));
appPrefs.colorPrefs.DColors.insert("Yellow", ScColor(0, 0, 255, 0));
appPrefs.colorPrefs.DColors.insert("Magenta", ScColor(0, 255, 0, 0));
appPrefs.colorPrefs.DColorSet = "Scribus_Small";
}
else
{
if (fiC.open(QIODevice::ReadOnly))
{
QString ColorEn, Cname;
int Rval, Gval, Bval;
QTextStream tsC(&fiC);
ColorEn = tsC.readLine();
if (ColorEn.startsWith("<?xml version="))
{
QByteArray docBytes("");
loadRawText(defaultSwatch, docBytes);
QString docText("");
docText = QString::fromUtf8(docBytes);
QDomDocument docu("scridoc");
docu.setContent(docText);
ScColor lf = ScColor();
QDomElement elem = docu.documentElement();
QDomNode PAGE = elem.firstChild();
while(!PAGE.isNull())
{
QDomElement pg = PAGE.toElement();
if(pg.tagName()=="COLOR" && pg.attribute("NAME")!=CommonStrings::None)
{
if (pg.hasAttribute("CMYK"))
lf.setNamedColor(pg.attribute("CMYK"));
else
lf.fromQColor(QColor(pg.attribute("RGB")));
if (pg.hasAttribute("Spot"))
lf.setSpotColor(static_cast<bool>(pg.attribute("Spot").toInt()));
else
lf.setSpotColor(false);
if (pg.hasAttribute("Register"))
lf.setRegistrationColor(static_cast<bool>(pg.attribute("Register").toInt()));
else
lf.setRegistrationColor(false);
appPrefs.colorPrefs.DColors.insert(pg.attribute("NAME"), lf);
}
PAGE=PAGE.nextSibling();
}
}
else
{
while (!tsC.atEnd())
{
ColorEn = tsC.readLine();
QTextStream CoE(&ColorEn, QIODevice::ReadOnly);
CoE >> Rval;
CoE >> Gval;
CoE >> Bval;
CoE >> Cname;
ScColor tmp;
tmp.setColorRGB(Rval, Gval, Bval);
appPrefs.colorPrefs.DColors.insert(Cname, tmp);
}
}
fiC.close();
}
appPrefs.colorPrefs.DColorSet = ScPaths::instance().shareDir() + "swatches/" + "Scribus Basic";
}
示例10: importColorsFromFile
//.........这里部分代码省略.........
{
QDomElement pg = PAGE.toElement();
if (pg.tagName()=="COLOR" && pg.attribute("NAME")!=CommonStrings::None)
{
if (pg.hasAttribute("SPACE"))
{
QString space = pg.attribute("SPACE");
if (space == "CMYK")
{
double c = pg.attribute("C", "0").toDouble() / 100.0;
double m = pg.attribute("M", "0").toDouble() / 100.0;
double y = pg.attribute("Y", "0").toDouble() / 100.0;
double k = pg.attribute("K", "0").toDouble() / 100.0;
lf.setCmykColorF(c, m, y, k);
}
else if (space == "RGB")
{
double r = pg.attribute("R", "0").toDouble() / 255.0;
double g = pg.attribute("G", "0").toDouble() / 255.0;
double b = pg.attribute("B", "0").toDouble() / 255.0;
lf.setRgbColorF(r, g, b);
}
else if (space == "Lab")
{
double L = pg.attribute("L", "0").toDouble();
double a = pg.attribute("A", "0").toDouble();
double b = pg.attribute("B", "0").toDouble();
lf.setLabColor(L, a, b);
}
}
else if (pg.hasAttribute("CMYK"))
lf.setNamedColor(pg.attribute("CMYK"));
else if (pg.hasAttribute("RGB"))
lf.fromQColor(QColor(pg.attribute("RGB")));
else
{
double L = pg.attribute("L", "0").toDouble();
double a = pg.attribute("A", "0").toDouble();
double b = pg.attribute("B", "0").toDouble();
lf.setLabColor(L, a, b);
}
if (pg.hasAttribute("Spot"))
lf.setSpotColor(static_cast<bool>(pg.attribute("Spot").toInt()));
else
lf.setSpotColor(false);
if (pg.hasAttribute("Register"))
lf.setRegistrationColor(static_cast<bool>(pg.attribute("Register").toInt()));
else
lf.setRegistrationColor(false);
EditColors.tryAddColor(pg.attribute("NAME"), lf);
}
else if (pg.tagName() == "Gradient")
{
if (dialogGradients != NULL)
{
VGradient gra = VGradient(VGradient::linear);
gra.clearStops();
QDomNode grad = pg.firstChild();
while (!grad.isNull())
{
QDomElement stop = grad.toElement();
QString name = stop.attribute("NAME");
double ramp = ScCLocale::toDoubleC(stop.attribute("RAMP"), 0.0);
int shade = stop.attribute("SHADE", "100").toInt();
double opa = ScCLocale::toDoubleC(stop.attribute("TRANS"), 1.0);
QColor color;