QGIS API Documentation 3.99.0-Master (2fe06baccd8)
Loading...
Searching...
No Matches
QgsPalLabeling Class Reference

PAL labeling utilities. More...

#include <qgspallabeling.h>

Static Public Member Functions

static bool geometryRequiresPreparation (const QgsGeometry &geometry, QgsRenderContext &context, const QgsCoordinateTransform &ct, const QgsGeometry &clipGeometry=QgsGeometry(), bool mergeLines=false)
 Checks whether a geometry requires preparation before registration with PAL.
static QgsGeometry prepareGeometry (const QgsGeometry &geometry, QgsRenderContext &context, const QgsCoordinateTransform &ct, const QgsGeometry &clipGeometry=QgsGeometry(), bool mergeLines=false)
 Prepares a geometry for registration with PAL.
static QStringList splitToGraphemes (const QString &text)
 Splits a text string to a list of graphemes, which are the smallest allowable character divisions in the string.
static QStringList splitToLines (const QString &text, const QString &wrapCharacter, int autoWrapLength=0, bool useMaxLineLengthWhenAutoWrapping=true)
 Splits a text string to a list of separate lines, using a specified wrap character (wrapCharacter).
static bool staticWillUseLayer (const QgsMapLayer *layer)
 Called to find out whether a specified layer is used for labeling.

Friends

class QgsDxfExport
class QgsPalLayerSettings
class QgsVectorLayerLabelProvider

Detailed Description

PAL labeling utilities.

Definition at line 1059 of file qgspallabeling.h.

Member Function Documentation

◆ geometryRequiresPreparation()

bool QgsPalLabeling::geometryRequiresPreparation ( const QgsGeometry & geometry,
QgsRenderContext & context,
const QgsCoordinateTransform & ct,
const QgsGeometry & clipGeometry = QgsGeometry(),
bool mergeLines = false )
static

Checks whether a geometry requires preparation before registration with PAL.

Parameters
geometrygeometry to prepare
contextrender context
ctcoordinate transform, or invalid transform if no transformation required
clipGeometrygeometry to clip features to, if applicable
mergeLinestrue if touching lines from this layer will be merged and treated as single features during labeling
Returns
true if geometry requires preparation

Definition at line 4214 of file qgspallabeling.cpp.

◆ prepareGeometry()

QgsGeometry QgsPalLabeling::prepareGeometry ( const QgsGeometry & geometry,
QgsRenderContext & context,
const QgsCoordinateTransform & ct,
const QgsGeometry & clipGeometry = QgsGeometry(),
bool mergeLines = false )
static

Prepares a geometry for registration with PAL.

Handles reprojection, rotation, clipping, etc.

Parameters
geometrygeometry to prepare
contextrender context
ctcoordinate transform, or invalid transform if no transformation required
clipGeometrygeometry to clip features to, if applicable
mergeLinestrue if touching lines from this layer will be merged and treated as single features during labeling
Returns
prepared geometry

Definition at line 4291 of file qgspallabeling.cpp.

◆ splitToGraphemes()

QStringList QgsPalLabeling::splitToGraphemes ( const QString & text)
static

Splits a text string to a list of graphemes, which are the smallest allowable character divisions in the string.

This accounts for scripts were individual characters are not allowed to be split apart (e.g., Arabic and Indic based scripts)

Parameters
textstring to split
Returns
list of graphemes

Definition at line 4277 of file qgspallabeling.cpp.

◆ splitToLines()

QStringList QgsPalLabeling::splitToLines ( const QString & text,
const QString & wrapCharacter,
int autoWrapLength = 0,
bool useMaxLineLengthWhenAutoWrapping = true )
static

Splits a text string to a list of separate lines, using a specified wrap character (wrapCharacter).

The text string will be split on either newline characters or the wrap character.

Since QGIS 3.4 the autoWrapLength argument can be used to specify an ideal length of line to automatically wrap text to (automatic wrapping is disabled if autoWrapLength is 0). This automatic wrapping is performed after processing wrapping using wrapCharacter. When auto wrapping is enabled, the useMaxLineLengthWhenAutoWrapping argument controls whether the lines should be wrapped to an ideal maximum of autoWrapLength characters, or if false then the lines are wrapped to an ideal minimum length of autoWrapLength characters.

Definition at line 4246 of file qgspallabeling.cpp.

◆ staticWillUseLayer()

bool QgsPalLabeling::staticWillUseLayer ( const QgsMapLayer * layer)
static

Called to find out whether a specified layer is used for labeling.

Definition at line 4167 of file qgspallabeling.cpp.

◆ QgsDxfExport

friend class QgsDxfExport
friend

Definition at line 1138 of file qgspallabeling.h.

◆ QgsPalLayerSettings

friend class QgsPalLayerSettings
friend

Definition at line 1149 of file qgspallabeling.h.

◆ QgsVectorLayerLabelProvider

friend class QgsVectorLayerLabelProvider
friend

Definition at line 1137 of file qgspallabeling.h.


The documentation for this class was generated from the following files: