Summary: | BQM Watermark tool : more super-impose visible watermark options [patch] | ||
---|---|---|---|
Product: | [Applications] digikam | Reporter: | Axel Krebs <axel.krebs> |
Component: | Plugin-Bqm-WaterMark | Assignee: | Digikam Developers <digikam-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | wishlist | CC: | ahmed.fathi.abdelmageed, caulier.gilles |
Priority: | NOR | ||
Version: | 2.5.0 | ||
Target Milestone: | --- | ||
Platform: | Ubuntu | ||
OS: | Linux | ||
Latest Commit: | https://commits.kde.org/digikam/65ef15bb4d6deb4b91d22016f47b88716dfa93ba | Version Fixed In: | 5.5.0 |
Sentry Crash Report: | |||
Attachments: |
distributed watermark (as with google)
water mark repetition and random placement patch the patch |
Description
Axel Krebs
2012-06-02 11:48:24 UTC
Created attachment 71509 [details]
distributed watermark (as with google)
Created attachment 104050 [details]
water mark repetition and random placement patch
I created this patch. now you can repeat the water mark in a systematic pattern or in a random pattern. you have both dense and sparse modes , and you can put custom sparsity parameter as you need. It works well with the four different rotations also. In addition , in the randomized placement mode , you can choose to randomize the orientation of the watermark also , or constraint the "randomness" to be the randomness of position only while the rotation is as chosen via the combo box
Created attachment 104051 [details]
the patch
forgot to mark it as patch
Ahmed, Patch do not compile : /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.cpp: In constructor ‘Digikam::WaterMark::Private::Private()’: /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.cpp:127:22: warning: ‘Digikam::WaterMark::Private::useTextRadioButton’ will be initialized after [-Wreorder] QRadioButton* useTextRadioButton; ^ /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.cpp:124:22: warning: ‘QCheckBox* Digikam::WaterMark::Private::useBackgroundCheckBox’ [-Wreorder] QCheckBox* useBackgroundCheckBox; ^ /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.cpp:89:5: warning: when initialized here [-Wreorder] Private() : ^ /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.cpp:133:22: warning: ‘Digikam::WaterMark::Private::placementPositionComboBox’ will be initialized after [-Wreorder] QComboBox* placementPositionComboBox; ^ /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.cpp:132:22: warning: ‘QComboBox* Digikam::WaterMark::Private::placementTypeComboBox’ [-Wreorder] QComboBox* placementTypeComboBox; ^ /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.cpp:89:5: warning: when initialized here [-Wreorder] Private() : ^ /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.cpp:135:22: warning: ‘Digikam::WaterMark::Private::sparsityFactorSpinBox’ will be initialized after [-Wreorder] QDoubleSpinBox * sparsityFactorSpinBox; ^ /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.cpp:134:22: warning: ‘QComboBox* Digikam::WaterMark::Private::rotationComboBox’ [-Wreorder] QComboBox* rotationComboBox; ^ /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.cpp:89:5: warning: when initialized here [-Wreorder] Private() : ^ In file included from /usr/lib64/qt5/include/QtGui/qfont.h:38:0, from /usr/lib64/qt5/include/QtGui/QFont:1, from /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.h:31, from /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.cpp:26: /usr/lib64/qt5/include/QtCore/qstring.h: In member function ‘virtual void Digikam::WaterMark::registerSettingsWidget()’: /usr/lib64/qt5/include/QtCore/qstring.h:788:5: error: ‘QString::QString(const char*)’ is private QString(const char *ch); ^ /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.cpp:322:177: error: within this context d->denseRepetitionCheckBox->setWhatsThis("When you choose to have the watermark repeated many times in the placement combo box, you can specify here whether the repetition"); ^ In file included from /usr/lib64/qt5/include/QtGui/qfont.h:38:0, from /usr/lib64/qt5/include/QtGui/QFont:1, from /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.h:31, from /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.cpp:26: /usr/lib64/qt5/include/QtCore/qstring.h:788:5: error: ‘QString::QString(const char*)’ is private QString(const char *ch); ^ /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.cpp:336:126: error: within this context "you can check this to make the watermark rotations random also[0,90,180,270]"); ^ In file included from /usr/lib64/qt5/include/QtGui/qfont.h:38:0, from /usr/lib64/qt5/include/QtGui/QFont:1, from /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.h:31, from /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.cpp:26: /usr/lib64/qt5/include/QtCore/qstring.h:788:5: error: ‘QString::QString(const char*)’ is private QString(const char *ch); ^ /home/gilles/Devel/5.x/core/utilities/queuemanager/tools/decorate/watermark.cpp:356:103: error: within this context " typically between 1.0 and 3.0. can also be less than 1.0"); ^ core/utilities/queuemanager/CMakeFiles/queuemanager_src.dir/build.make:518: recipe for target 'core/utilities/queuemanager/CMakeFiles/queuemanager_src.dir/tools/decorate/watermark.cpp.o' failed make[2]: *** [core/utilities/queuemanager/CMakeFiles/queuemanager_src.dir/tools/decorate/watermark.cpp.o] Error 1 make[2]: *** Waiting for unfinished jobs.... ----- In source code i18n(" ") must be replaced by QLatin1String(" ") Fix also indentation and alignment (coding style). I suspect also a broken braken in last function. Did you compile this code on your computer ? Gilles Caulier strange . It compiles and works perfectly well on my computer. I also reset the branch, pulled the master , and re-applied the same patch file and it compiled without any problems. Here digiKam is compiled with pure Qt5. No extra KDE4LibsSupport typicially introduced if you compile digiKam with KCalCore support or another KDE desktop dependencies. Check these points : KF5::AkonadiContact, KF5::FileMetaData, KF5::CalendarCore https://cgit.kde.org/digikam-software-compilation.git/tree/DEPENDENCIES Gilles Caulier Git commit 65ef15bb4d6deb4b91d22016f47b88716dfa93ba by Gilles Caulier. Committed on 21/02/2017 at 13:06. Pushed by cgilles into branch 'master'. apply patch #104050 from Ahmed Fathi to perform Watermark repetition and random placement. port patch to pure Qt5 FIXED-IN: 5.5.0 M +2 -1 NEWS M +216 -67 utilities/queuemanager/tools/decorate/watermark.cpp https://commits.kde.org/digikam/65ef15bb4d6deb4b91d22016f47b88716dfa93ba |