QGIS API Documentation
3.16.0-Hannover (43b64b13f3)
|
Go to the documentation of this file.
27 return QStringLiteral(
"Numeric" );
32 return QObject::tr(
"Numeric" );
57 QPainter *painter = context.
painter();
107 QString QgsNumericScaleBarRenderer::scaleText(
double scale,
const QgsScaleBarSettings &settings )
const
void draw(QgsRenderContext &context, const QgsScaleBarSettings &settings, const QgsScaleBarRenderer::ScaleBarContext &scaleContext) const override
Draws the scalebar using the specified settings and scaleContext to a destination render context.
QgsNumericScaleBarRenderer * clone() const override
Returns a clone of the renderer.
double convertToPainterUnits(double size, QgsUnitTypes::RenderUnit unit, const QgsMapUnitScale &scale=QgsMapUnitScale()) const
Converts a size from the specified units to painter units (pixels).
void setPainterFlagsUsingContext(QPainter *painter=nullptr) const
Sets relevant flags on a destination painter, using the flags and settings currently defined for the ...
Contains parameters regarding scalebar calculations.
static void drawText(const QRectF &rect, double rotation, HAlignment alignment, const QStringList &textLines, QgsRenderContext &context, const QgsTextFormat &format, bool drawAsOutlines=true, VAlignment vAlignment=AlignTop)
Draws text within a rectangle using the specified settings.
@ AlignCenter
Center align.
Contains information about the context of a rendering operation.
QString id() const override
Returns the unique ID for this renderer.
@ RenderMillimeters
Millimeters.
QSizeF calculateBoxSize(QgsRenderContext &context, const QgsScaleBarSettings &settings, const QgsScaleBarRenderer::ScaleBarContext &scaleContext) const override
Calculates the required box size (in millimeters) for a scalebar using the specified settings and sca...
int sortKey() const override
Returns a sorting key value, where renderers with a lower sort key will be shown earlier in lists.
@ AlignMiddle
Center aligned.
static double textWidth(const QgsRenderContext &context, const QgsTextFormat &format, const QStringList &textLines, QFontMetricsF *fontMetrics=nullptr)
Returns the width of a text based on a given format.
QSizeF size
Destination size for scalebar.
Alignment alignment() const
Returns the scalebar alignment.
double boxContentSpace() const
Returns the spacing (margin) between the scalebar box and content in millimeters.
QgsTextFormat & textFormat()
Returns the text format used for drawing text in the scalebar.
QString visibleName() const override
Returns the user friendly, translated name for the renderer.
The QgsScaleBarSettings class stores the appearance and layout settings for scalebar drawing with Qgs...
QgsNumericScaleBarRenderer()=default
Constructor for QgsNumericScaleBarRenderer.
@ FlagUsesAlignment
Renderer uses the QgsScaleBarSettings::alignment() setting.
double scale
Scale denominator.
Flags flags() const override
Returns the scalebar rendering flags, which dictates the renderer's behavior.
@ AlignRight
Right aligned.
static double textHeight(const QgsRenderContext &context, const QgsTextFormat &format, const QStringList &textLines, DrawMode mode=Point, QFontMetricsF *fontMetrics=nullptr)
Returns the height of a text based on a given format.
QFont toQFont() const
Returns a QFont matching the relevant settings from this text format.
Scoped object for saving and restoring a QPainter object's state.
static double fontAscentMM(const QFont &font)
Calculates a font ascent in millimeters, including workarounds for QT font rendering issues.
QPainter * painter()
Returns the destination QPainter for the render operation.
const QgsNumericFormat * numericFormat() const
Returns the numeric format used for numbers in the scalebar.
A scale bar style that draws text in the form of '1:XXXXX'.
A context for numeric formats.
HAlignment
Horizontal alignment.
static double textWidthMM(const QFont &font, const QString &text)
Calculate a font width in millimeters for a text string, including workarounds for QT font rendering ...