mirror of
https://github.com/YACReader/yacreader
synced 2026-03-01 10:22:58 -05:00
Add new function to recolor svg files supporting 3 placeholders
This commit is contained in:
@ -2,13 +2,6 @@
|
|||||||
|
|
||||||
#include "yacreader_global.h"
|
#include "yacreader_global.h"
|
||||||
|
|
||||||
QString recolorSvgXML(QString &svg,
|
|
||||||
const QString &placeHolder,
|
|
||||||
const QColor &color)
|
|
||||||
{
|
|
||||||
return svg.replace(placeHolder, color.name(QColor::HexRgb), Qt::CaseInsensitive);
|
|
||||||
}
|
|
||||||
|
|
||||||
QString readSvg(const QString &resourcePath)
|
QString readSvg(const QString &resourcePath)
|
||||||
{
|
{
|
||||||
QFile in(resourcePath);
|
QFile in(resourcePath);
|
||||||
@ -48,6 +41,25 @@ QString writeSvg(const QString &svg, const QString &resourcePath, const QString
|
|||||||
return outPath;
|
return outPath;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QString recolorSvgXML(QString &svg,
|
||||||
|
const QString &placeHolder,
|
||||||
|
const QColor &color)
|
||||||
|
{
|
||||||
|
return svg.replace(placeHolder, color.name(QColor::HexRgb), Qt::CaseInsensitive);
|
||||||
|
}
|
||||||
|
|
||||||
|
QString recoloredSvgToThemeFile(const QString &resourcePath,
|
||||||
|
const QColor &color, // #f0f (magenta)
|
||||||
|
const QString &themeName,
|
||||||
|
const QString &suffix)
|
||||||
|
{
|
||||||
|
auto svg = readSvg(resourcePath);
|
||||||
|
|
||||||
|
recolorSvgXML(svg, "#f0f", color);
|
||||||
|
|
||||||
|
return writeSvg(svg, resourcePath, themeName, suffix);
|
||||||
|
}
|
||||||
|
|
||||||
QString recoloredSvgToThemeFile(const QString &resourcePath,
|
QString recoloredSvgToThemeFile(const QString &resourcePath,
|
||||||
const QColor &color1, // #f0f (magenta)
|
const QColor &color1, // #f0f (magenta)
|
||||||
const QColor &color2, // #0ff (cyan)
|
const QColor &color2, // #0ff (cyan)
|
||||||
@ -63,13 +75,17 @@ QString recoloredSvgToThemeFile(const QString &resourcePath,
|
|||||||
}
|
}
|
||||||
|
|
||||||
QString recoloredSvgToThemeFile(const QString &resourcePath,
|
QString recoloredSvgToThemeFile(const QString &resourcePath,
|
||||||
const QColor &color, // #f0f (magenta)
|
const QColor &color1, // #f0f (magenta)
|
||||||
|
const QColor &color2, // #0ff (cyan)
|
||||||
|
const QColor &color3, // #ff0 (yellow)
|
||||||
const QString &themeName,
|
const QString &themeName,
|
||||||
const QString &suffix)
|
const QString &suffix)
|
||||||
{
|
{
|
||||||
auto svg = readSvg(resourcePath);
|
auto svg = readSvg(resourcePath);
|
||||||
|
|
||||||
recolorSvgXML(svg, "#f0f", color);
|
recolorSvgXML(svg, "#f0f", color1);
|
||||||
|
recolorSvgXML(svg, "#0ff", color2);
|
||||||
|
recolorSvgXML(svg, "#ff0", color3);
|
||||||
|
|
||||||
return writeSvg(svg, resourcePath, themeName, suffix);
|
return writeSvg(svg, resourcePath, themeName, suffix);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,18 +3,24 @@
|
|||||||
|
|
||||||
#include <QtGui>
|
#include <QtGui>
|
||||||
|
|
||||||
QString recolorSvgXML(QString &svg, const QString &placeHolder, const QColor &color);
|
|
||||||
QString readSvg(const QString &resourcePath);
|
QString readSvg(const QString &resourcePath);
|
||||||
QString writeSvg(const QString &svg, const QString &resourcePath, const QString &themeName);
|
QString writeSvg(const QString &svg, const QString &resourcePath, const QString &themeName);
|
||||||
|
|
||||||
|
QString recolorSvgXML(QString &svg, const QString &placeHolder, const QColor &color);
|
||||||
|
QString recoloredSvgToThemeFile(const QString &resourcePath,
|
||||||
|
const QColor &color, // #f0f (magenta)
|
||||||
|
const QString &themeName,
|
||||||
|
const QString &suffix = QString());
|
||||||
QString recoloredSvgToThemeFile(const QString &resourcePath,
|
QString recoloredSvgToThemeFile(const QString &resourcePath,
|
||||||
const QColor &color1, // #f0f (magenta)
|
const QColor &color1, // #f0f (magenta)
|
||||||
const QColor &color2, // #0ff (cyan)
|
const QColor &color2, // #0ff (cyan)
|
||||||
const QString &themeName,
|
const QString &themeName,
|
||||||
const QString &suffix = QString());
|
const QString &suffix = QString());
|
||||||
QString recoloredSvgToThemeFile(const QString &resourcePath,
|
QString recoloredSvgToThemeFile(const QString &resourcePath,
|
||||||
const QColor &color, // #f0f (magenta)
|
const QColor &color1, // #f0f (magenta)
|
||||||
|
const QColor &color2, // #0ff (cyan)
|
||||||
|
const QColor &color3, // #ff0 (yellow)
|
||||||
const QString &themeName,
|
const QString &themeName,
|
||||||
const QString &suffix = QString());
|
const QString &suffix = QString());
|
||||||
QString createMenuArrowSvg(const QColor &color, const QString &themeName);
|
|
||||||
|
|
||||||
#endif // ICON_UTILS_H
|
#endif // ICON_UTILS_H
|
||||||
|
|||||||
Reference in New Issue
Block a user