[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [calligra/calligra/2.9] krita/plugins/formats/jpeg: Add an option to the jpeg converter to not save
From: Boudewijn Rempt <boud () valdyas ! org>
Date: 2015-09-19 8:54:51
Message-ID: E1ZdDv1-00073K-NF () scm ! kde ! org
[Download RAW message or body]
Git commit d1cbf8e4aaef397b82d512189f79432566c7e702 by Boudewijn Rempt.
Committed on 19/09/2015 at 07:50.
Pushed by rempt into branch 'calligra/2.9'.
Add an option to the jpeg converter to not save the icc profile
Which discards any information about what the colors really mean,
but so be it.
M +6 -3 krita/plugins/formats/jpeg/kis_jpeg_converter.cc
M +1 -0 krita/plugins/formats/jpeg/kis_jpeg_converter.h
M +5 -0 krita/plugins/formats/jpeg/kis_jpeg_export.cc
M +16 -6 krita/plugins/formats/jpeg/kis_wdg_options_jpeg.ui
http://commits.kde.org/calligra/d1cbf8e4aaef397b82d512189f79432566c7e702
diff --git a/krita/plugins/formats/jpeg/kis_jpeg_converter.cc \
b/krita/plugins/formats/jpeg/kis_jpeg_converter.cc index dbe470a..5fbd3bd 100644
--- a/krita/plugins/formats/jpeg/kis_jpeg_converter.cc
+++ b/krita/plugins/formats/jpeg/kis_jpeg_converter.cc
@@ -631,8 +631,6 @@ KisImageBuilder_Result KisJPEGConverter::buildFile(const KUrl& \
uri, KisPaintLaye }
}
- const KoColorProfile* colorProfile = layer->colorSpace()->profile();
- QByteArray colorProfileData = colorProfile->rawData();
KisPaintDeviceSP dev = new KisPaintDevice(layer->colorSpace());
KoColor c(options.transparencyFillColor, layer->colorSpace());
@@ -641,7 +639,12 @@ KisImageBuilder_Result KisJPEGConverter::buildFile(const KUrl& \
uri, KisPaintLaye
gc.bitBlt(QPoint(0, 0), layer->paintDevice(), QRect(0, 0, width, height));
gc.end();
- write_icc_profile(& cinfo, (uchar*) colorProfileData.data(), \
colorProfileData.size()); +
+ if (options.saveProfile) {
+ const KoColorProfile* colorProfile = layer->colorSpace()->profile();
+ QByteArray colorProfileData = colorProfile->rawData();
+ write_icc_profile(& cinfo, (uchar*) colorProfileData.data(), \
colorProfileData.size()); + }
// Write data information
diff --git a/krita/plugins/formats/jpeg/kis_jpeg_converter.h \
b/krita/plugins/formats/jpeg/kis_jpeg_converter.h index 41bb2b8..68dec8d 100644
--- a/krita/plugins/formats/jpeg/kis_jpeg_converter.h
+++ b/krita/plugins/formats/jpeg/kis_jpeg_converter.h
@@ -71,6 +71,7 @@ struct KisJPEGOptions {
QList<const KisMetaData::Filter*> filters;
QColor transparencyFillColor;
bool forceSRGB;
+ bool saveProfile;
};
namespace KisMetaData
diff --git a/krita/plugins/formats/jpeg/kis_jpeg_export.cc \
b/krita/plugins/formats/jpeg/kis_jpeg_export.cc index 173e218..92f82d4 100644
--- a/krita/plugins/formats/jpeg/kis_jpeg_export.cc
+++ b/krita/plugins/formats/jpeg/kis_jpeg_export.cc
@@ -117,6 +117,8 @@ KisImportExportFilter::ConversionStatus \
KisJPEGExport::convert(const QByteArray& wdgUi.chkForceSRGB->setVisible(!sRGB);
wdgUi.chkForceSRGB->setChecked(cfg.getBool("forceSRGB", false));
+ wdgUi.chkSaveProfile->setChecked(cfg.getBool("saveProfile", true));
+
QStringList rgb = cfg.getString("transparencyFillcolor", \
"255,255,255").split(','); \
wdgUi.bnTransparencyFillColor->setDefaultColor(Qt::white);
wdgUi.bnTransparencyFillColor->setColor(QColor(rgb[0].toInt(), rgb[1].toInt(), \
rgb[2].toInt())); @@ -146,6 +148,9 @@ KisImportExportFilter::ConversionStatus \
KisJPEGExport::convert(const QByteArray& options.forceSRGB = \
wdgUi.chkForceSRGB->isChecked(); cfg.setProperty("forceSRGB", options.forceSRGB);
+ options.saveProfile = wdgUi.chkSaveProfile->isChecked();
+ cfg.setProperty("saveProfile", options.saveProfile);
+
// Advanced
options.optimize = wdgUi.optimize->isChecked();
cfg.setProperty("optimize", options.optimize);
diff --git a/krita/plugins/formats/jpeg/kis_wdg_options_jpeg.ui \
b/krita/plugins/formats/jpeg/kis_wdg_options_jpeg.ui index f35da3f..99cc12c 100644
--- a/krita/plugins/formats/jpeg/kis_wdg_options_jpeg.ui
+++ b/krita/plugins/formats/jpeg/kis_wdg_options_jpeg.ui
@@ -109,7 +109,7 @@
</item>
</layout>
</item>
- <item row="3" column="0">
+ <item row="4" column="0">
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
@@ -122,6 +122,16 @@
</property>
</spacer>
</item>
+ <item row="3" column="0">
+ <widget class="QCheckBox" name="chkSaveProfile">
+ <property name="text">
+ <string>Save ICC Profile</string>
+ </property>
+ <property name="checked">
+ <bool>false</bool>
+ </property>
+ </widget>
+ </item>
</layout>
</widget>
<widget class="QWidget" name="tab_2">
@@ -333,16 +343,16 @@
</widget>
<customwidgets>
<customwidget>
+ <class>KColorButton</class>
+ <extends>QPushButton</extends>
+ <header>kcolorbutton.h</header>
+ </customwidget>
+ <customwidget>
<class>KisDoubleSliderSpinBox</class>
<extends>QWidget</extends>
<header>kis_slider_spin_box.h</header>
<container>1</container>
</customwidget>
- <customwidget>
- <class>KColorButton</class>
- <extends>QPushButton</extends>
- <header>kcolorbutton.h</header>
- </customwidget>
</customwidgets>
<tabstops>
<tabstop>tabWidget</tabstop>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic