本文整理汇总了C++中KPMetadata::setImageColorWorkSpace方法的典型用法代码示例。如果您正苦于以下问题:C++ KPMetadata::setImageColorWorkSpace方法的具体用法?C++ KPMetadata::setImageColorWorkSpace怎么用?C++ KPMetadata::setImageColorWorkSpace使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KPMetadata
的用法示例。
在下文中一共展示了KPMetadata::setImageColorWorkSpace方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: run
void SaveImgThread::run()
{
// Perform saving ---------------------------------------------------------------
QImage prev = d->img.scaled(1280, 1024, Qt::KeepAspectRatio, Qt::SmoothTransformation);
QImage thumb = d->img.scaled(160, 120, Qt::KeepAspectRatio, Qt::SmoothTransformation);
QByteArray prof = KPWriteImage::getICCProfilFromFile(RawDecodingSettings::SRGB);
KPMetadata meta;
meta.setImageProgramId(QString("Kipi-plugins"), QString(kipiplugins_version));
meta.setImageDimensions(d->img.size());
if (d->format != QString("JPEG"))
meta.setImagePreview(prev);
meta.setExifThumbnail(thumb);
meta.setExifTagString("Exif.Image.DocumentName", QString("Scanned Image")); // not i18n
meta.setExifTagString("Exif.Image.Make", d->make);
meta.setXmpTagString("Xmp.tiff.Make", d->make);
meta.setExifTagString("Exif.Image.Model", d->model);
meta.setXmpTagString("Xmp.tiff.Model", d->model);
meta.setImageDateTime(QDateTime::currentDateTime());
meta.setImageOrientation(KPMetadata::ORIENTATION_NORMAL);
meta.setImageColorWorkSpace(KPMetadata::WORKSPACE_SRGB);
KPWriteImage wImageIface;
if (d->frmt != KSaneIface::KSaneWidget::FormatRGB_16_C)
{
QByteArray data((const char*)d->img.bits(), d->img.numBytes());
wImageIface.setImageData(data, d->img.width(), d->img.height(), false, true, prof, meta);
}
else
{
// 16 bits color depth image.
wImageIface.setImageData(d->ksaneData, d->width, d->height, true, false, prof, meta);
}
bool ret = false;
QString path;
if(d->newUrl.isLocalFile())
path = d->newUrl.toLocalFile();
else
path = d->newUrl.path();
if (d->format == QString("JPEG"))
{
ret = wImageIface.write2JPEG(path);
}
else if (d->format == QString("PNG"))
{
ret = wImageIface.write2PNG(path);
}
else if (d->format == QString("TIFF"))
{
ret = wImageIface.write2TIFF(path);
}
else
{
ret = d->img.save(path, d->format.toAscii().data());
}
emit signalComplete(d->newUrl, ret);
}