QGIS API Documentation 3.99.0-Master (e9821da5c6b)
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 1092 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 4332 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 4409 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 4395 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 4364 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 4285 of file qgspallabeling.cpp.

◆ QgsDxfExport

friend class QgsDxfExport
friend

Definition at line 1171 of file qgspallabeling.h.

◆ QgsPalLayerSettings

friend class QgsPalLayerSettings
friend

Definition at line 1182 of file qgspallabeling.h.

◆ QgsVectorLayerLabelProvider

friend class QgsVectorLayerLabelProvider
friend

Definition at line 1170 of file qgspallabeling.h.


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