QGIS API Documentation
3.2.0-Bonn (bc43194)
|
A cache for images / pictures derived from svg files. More...
#include <qgssvgcache.h>
Signals | |
void | remoteSvgFetched (const QString &url) |
Emitted when the cache has finished retrieving an SVG file from a remote url. More... | |
void | statusChanged (const QString &statusQString) |
Emit a signal to be caught by qgisapp and display a msg on status bar. More... | |
Public Member Functions | |
QgsSvgCache (QObject *parent=nullptr) | |
Constructor for QgsSvgCache. More... | |
~QgsSvgCache () override | |
void | containsParams (const QString &path, bool &hasFillParam, QColor &defaultFillColor, bool &hasStrokeParam, QColor &defaultStrokeColor, bool &hasStrokeWidthParam, double &defaultStrokeWidth) const |
Tests if an svg file contains parameters for fill, stroke color, stroke width. More... | |
void | containsParams (const QString &path, bool &hasFillParam, bool &hasDefaultFillParam, QColor &defaultFillColor, bool &hasFillOpacityParam, bool &hasDefaultFillOpacity, double &defaultFillOpacity, bool &hasStrokeParam, bool &hasDefaultStrokeColor, QColor &defaultStrokeColor, bool &hasStrokeWidthParam, bool &hasDefaultStrokeWidth, double &defaultStrokeWidth, bool &hasStrokeOpacityParam, bool &hasDefaultStrokeOpacity, double &defaultStrokeOpacity) const |
Tests if an svg file contains parameters for fill, stroke color, stroke width. More... | |
QByteArray | getImageData (const QString &path) const |
Gets image data. More... | |
QImage | svgAsImage (const QString &path, double size, const QColor &fill, const QColor &stroke, double strokeWidth, double widthScaleFactor, bool &fitsInCache, double fixedAspectRatio=0) |
Gets SVG as QImage. More... | |
QPicture | svgAsPicture (const QString &path, double size, const QColor &fill, const QColor &stroke, double strokeWidth, double widthScaleFactor, bool forceVectorOutput=false, double fixedAspectRatio=0) |
Gets SVG as QPicture&. More... | |
QByteArray | svgContent (const QString &path, double size, const QColor &fill, const QColor &stroke, double strokeWidth, double widthScaleFactor, double fixedAspectRatio=0) |
Gets SVG content. More... | |
QSizeF | svgViewboxSize (const QString &path, double size, const QColor &fill, const QColor &stroke, double strokeWidth, double widthScaleFactor, double fixedAspectRatio=0) |
Calculates the viewbox size of a (possibly cached) SVG file. More... | |
Friends | |
class | TestQgsSvgCache |
A cache for images / pictures derived from svg files.
This class supports parameter replacement in svg files according to the svg params specification (http://www.w3.org/TR/2009/WD-SVGParamPrimer-20090616/). Supported are the parameters 'fill-color', 'pen-color', 'outline-width', 'stroke-width'. E.g. <circle fill="param(fill-color red)" stroke="param(pen-color black)" stroke-width="param(outline-width 1)"
QgsSvgCache is not usually directly created, but rather accessed through QgsApplication::svgCache().
Definition at line 130 of file qgssvgcache.h.
QgsSvgCache::QgsSvgCache | ( | QObject * | parent = nullptr | ) |
Constructor for QgsSvgCache.
Definition at line 82 of file qgssvgcache.cpp.
|
override |
Definition at line 104 of file qgssvgcache.cpp.
void QgsSvgCache::containsParams | ( | const QString & | path, |
bool & | hasFillParam, | ||
QColor & | defaultFillColor, | ||
bool & | hasStrokeParam, | ||
QColor & | defaultStrokeColor, | ||
bool & | hasStrokeWidthParam, | ||
double & | defaultStrokeWidth | ||
) | const |
Tests if an svg file contains parameters for fill, stroke color, stroke width.
If yes, possible default values are returned. If there are several default values in the svg file, only the first one is considered
Definition at line 243 of file qgssvgcache.cpp.
void QgsSvgCache::containsParams | ( | const QString & | path, |
bool & | hasFillParam, | ||
bool & | hasDefaultFillParam, | ||
QColor & | defaultFillColor, | ||
bool & | hasFillOpacityParam, | ||
bool & | hasDefaultFillOpacity, | ||
double & | defaultFillOpacity, | ||
bool & | hasStrokeParam, | ||
bool & | hasDefaultStrokeColor, | ||
QColor & | defaultStrokeColor, | ||
bool & | hasStrokeWidthParam, | ||
bool & | hasDefaultStrokeWidth, | ||
double & | defaultStrokeWidth, | ||
bool & | hasStrokeOpacityParam, | ||
bool & | hasDefaultStrokeOpacity, | ||
double & | defaultStrokeOpacity | ||
) | const |
Tests if an svg file contains parameters for fill, stroke color, stroke width.
If yes, possible default values are returned. If there are several default values in the svg file, only the first one is considered.
path | path to SVG file |
hasFillParam | will be true if fill param present in SVG |
hasDefaultFillParam | will be true if fill param has a default value specified |
defaultFillColor | will be set to default fill color specified in SVG, if present |
hasFillOpacityParam | will be true if fill opacity param present in SVG |
hasDefaultFillOpacity | will be true if fill opacity param has a default value specified |
defaultFillOpacity | will be set to default fill opacity specified in SVG, if present |
hasStrokeParam | will be true if stroke param present in SVG |
hasDefaultStrokeColor | will be true if stroke param has a default value specified |
defaultStrokeColor | will be set to default stroke color specified in SVG, if present |
hasStrokeWidthParam | will be true if stroke width param present in SVG |
hasDefaultStrokeWidth | will be true if stroke width param has a default value specified |
defaultStrokeWidth | will be set to default stroke width specified in SVG, if present |
hasStrokeOpacityParam | will be true if stroke opacity param present in SVG |
hasDefaultStrokeOpacity | will be true if stroke opacity param has a default value specified |
defaultStrokeOpacity | will be set to default stroke opacity specified in SVG, if present |
Definition at line 263 of file qgssvgcache.cpp.
QByteArray QgsSvgCache::getImageData | ( | const QString & | path | ) | const |
Gets image data.
Definition at line 386 of file qgssvgcache.cpp.
|
signal |
Emitted when the cache has finished retrieving an SVG file from a remote url.
|
signal |
Emit a signal to be caught by qgisapp and display a msg on status bar.
QImage QgsSvgCache::svgAsImage | ( | const QString & | path, |
double | size, | ||
const QColor & | fill, | ||
const QColor & | stroke, | ||
double | strokeWidth, | ||
double | widthScaleFactor, | ||
bool & | fitsInCache, | ||
double | fixedAspectRatio = 0 |
||
) |
Gets SVG as QImage.
path | Absolute path to SVG file. |
size | size of cached image |
fill | color of fill |
stroke | color of stroke |
strokeWidth | width of stroke |
widthScaleFactor | width scale factor |
fitsInCache | |
fixedAspectRatio | fixed aspect ratio (optional) |
Definition at line 110 of file qgssvgcache.cpp.
QPicture QgsSvgCache::svgAsPicture | ( | const QString & | path, |
double | size, | ||
const QColor & | fill, | ||
const QColor & | stroke, | ||
double | strokeWidth, | ||
double | widthScaleFactor, | ||
bool | forceVectorOutput = false , |
||
double | fixedAspectRatio = 0 |
||
) |
Gets SVG as QPicture&.
path | Absolute path to SVG file. |
size | size of cached image |
fill | color of fill |
stroke | color of stroke |
strokeWidth | width of stroke |
widthScaleFactor | width scale factor |
forceVectorOutput | |
fixedAspectRatio | fixed aspect ratio (optional) |
Definition at line 170 of file qgssvgcache.cpp.
QByteArray QgsSvgCache::svgContent | ( | const QString & | path, |
double | size, | ||
const QColor & | fill, | ||
const QColor & | stroke, | ||
double | strokeWidth, | ||
double | widthScaleFactor, | ||
double | fixedAspectRatio = 0 |
||
) |
Gets SVG content.
Definition at line 194 of file qgssvgcache.cpp.
QSizeF QgsSvgCache::svgViewboxSize | ( | const QString & | path, |
double | size, | ||
const QColor & | fill, | ||
const QColor & | stroke, | ||
double | strokeWidth, | ||
double | widthScaleFactor, | ||
double | fixedAspectRatio = 0 |
||
) |
Calculates the viewbox size of a (possibly cached) SVG file.
path | Absolute path to SVG file. |
size | size of cached image |
fill | color of fill |
stroke | color of stroke |
strokeWidth | width of stroke |
widthScaleFactor | width scale factor |
fixedAspectRatio | fixed aspect ratio (optional) |
Definition at line 204 of file qgssvgcache.cpp.
|
friend |
Definition at line 329 of file qgssvgcache.h.