summaryrefslogtreecommitdiff
path: root/src/svg/qsvgstyle_p.h
diff options
context:
space:
mode:
authorAles Erjavec <ales.erjavec@fri.uni-lj.si>2020-01-31 11:18:31 +0100
committerAles Erjavec <ales.erjavec@fri.uni-lj.si>2020-11-03 10:25:25 +0200
commit50457678278f81d6dc07b8396dfb235fd9acf557 (patch)
tree01d7a28d21e34726003dfb8ea68052c960aff02b /src/svg/qsvgstyle_p.h
parent1fcc86f538200ceca7412ab292947cdb2991d12c (diff)
downloadqtsvg-50457678278f81d6dc07b8396dfb235fd9acf557.tar.gz
Add support for 'image-rendering' attribute
Write and parse the 'image-rendering' attibute. The value is mapped to QPainter::SmoothPixmapTransform render hint. [ChangeLog] Add support for 'image-rendering' attribute Task-number: QTBUG-4145 Change-Id: I5268eac73b234cd195adade502ab9945a89f3ff6 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
Diffstat (limited to 'src/svg/qsvgstyle_p.h')
-rw-r--r--src/svg/qsvgstyle_p.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/svg/qsvgstyle_p.h b/src/svg/qsvgstyle_p.h
index 420dd67..8664f7a 100644
--- a/src/svg/qsvgstyle_p.h
+++ b/src/svg/qsvgstyle_p.h
@@ -148,6 +148,7 @@ struct Q_SVG_PRIVATE_EXPORT QSvgExtraStates
int nestedUseLevel = 0;
int nestedUseCount = 0;
bool vectorEffect; // true if pen is cosmetic
+ qint8 imageRendering; // QSvgQualityStyle::ImageRendering
};
class Q_SVG_PRIVATE_EXPORT QSvgStyleProperty : public QSvgRefCounted
@@ -186,10 +187,18 @@ public:
class Q_SVG_PRIVATE_EXPORT QSvgQualityStyle : public QSvgStyleProperty
{
public:
+ enum ImageRendering: qint8 {
+ ImageRenderingAuto = 0,
+ ImageRenderingOptimizeSpeed = 1,
+ ImageRenderingOptimizeQuality = 2,
+ };
+
QSvgQualityStyle(int color);
void apply(QPainter *p, const QSvgNode *node, QSvgExtraStates &states) override;
void revert(QPainter *p, QSvgExtraStates &states) override;
Type type() const override;
+
+ void setImageRendering(ImageRendering);
private:
// color-render ing v v 'auto' | 'optimizeSpeed' |
// 'optimizeQuality' | 'inherit'
@@ -210,7 +219,9 @@ private:
// image-rendering v v 'auto' | 'optimizeSpeed' | 'optimizeQuality' |
// 'inherit'
- //QSvgImageRendering m_imageRendering;
+ qint32 m_imageRendering: 4;
+ qint32 m_oldImageRendering: 4;
+ qint32 m_imageRenderingSet: 1;
};