QCAD
Open Source 2D CAD
Loading...
Searching...
No Matches
RTextRenderer Class Reference

Renders formatted text into painter paths. More...

#include <RTextRenderer.h>

Public Types

enum  Target { PainterPaths = 0x01 , RichText = 0x02 }
 

Public Member Functions

RBox getBoundingBox () const
 
double getHeight () const
 
QList< RPainterPathgetPainterPaths () const
 
QString getRichText () const
 
QList< RTextLayoutgetTextLayouts () const
 
double getWidth () const
 
void render ()
 Renders the text data into painter paths.
 
void renderSimple ()
 Renders the text data into painter paths.
 
 RTextRenderer (const RTextBasedData &textData, bool draft, RTextRenderer::Target target, double fontHeightFactor=1.0)
 

Static Public Member Functions

static void lockForDrawing ()
 
static void unlockForDrawing ()
 

Static Public Attributes

static QChar chDegree = QChar(0x00b0)
 Copyright (c) 2011-2018 by Andrew Mustun.
 
static QChar chDiameter = QChar(0x00f8)
 
static QChar chPlusMinus = QChar(0x00b1)
 
static QRegularExpression escDegree
 
static QString escDegreeStr = "%%d"
 
static QRegularExpression escDiameter
 
static QString escDiameterStr = "%%c"
 
static QRegularExpression escNoOp
 
static QString escNoOpStr = "%%"
 
static QRegularExpression escPlusMinus
 
static QString escPlusMinusStr = "%%p"
 
static QRegularExpression escUnderline
 
static QString escUnderlineStr = "%%u"
 
static QRegularExpression rxAlignmentCenter
 
static QString rxAlignmentCenterStr = "\\\\pqc;"
 
static QRegularExpression rxAlignmentChange
 
static QRegularExpression rxAlignmentChangeBlock
 
static QString rxAlignmentChangeBlockStr = "\\\\A(\\d+)"
 
static QString rxAlignmentChangeStr = "\\\\A(\\d+);"
 
static QRegularExpression rxAlignmentLeft
 
static QString rxAlignmentLeftStr = "\\\\pql;"
 
static QRegularExpression rxAlignmentRight
 
static QString rxAlignmentRightStr = "\\\\pqr;"
 
static QRegularExpression rxAll
 
static QRegularExpression rxAllBreak
 
static QString rxAllBreakStr = "(" + rxAllTmp + "|" + RTextRenderer::rxOptionalBreakStr + ")"
 
static QString rxAllStr = "(" + rxAllTmp + ")"
 
static QRegularExpression rxBackslash
 
static QString rxBackslashStr = "\\\\\\\\"
 
static QRegularExpression rxBeginBlock
 
static QString rxBeginBlockStr = "\\{"
 
static QRegularExpression rxColorChangeCustom
 
static QString rxColorChangeCustomStr ="\\\\c(\\d+);"
 
static QRegularExpression rxColorChangeIndex
 
static QString rxColorChangeIndexStr = "\\\\C(\\d+);"
 
static QRegularExpression rxCurlyClose
 
static QString rxCurlyCloseStr = "\\\\\\}"
 
static QRegularExpression rxCurlyOpen
 
static QString rxCurlyOpenStr = "\\\\\\{"
 
static QRegularExpression rxDegree
 
static QString rxDegreeStr = "%%[dD]"
 
static QRegularExpression rxDiameter
 
static QString rxDiameterStr = "%%[cC]"
 
static QRegularExpression rxEndBlock
 
static QString rxEndBlockStr = "\\}"
 
static QRegularExpression rxFontChangeCad
 
static QString rxFontChangeCadStr
 
static QRegularExpression rxFontChangeTtf
 
static QString rxFontChangeTtfStr
 
static QRegularExpression rxHeightChange
 
static QString rxHeightChangeStr = "\\\\H(\\d*\\.?\\d*)(x?);"
 
static QRegularExpression rxLineFeed
 
static QString rxLineFeedStr = "\\\\p(?:x?i(-?\\d*\\.?\\d*)(?:,l-?\\d*\\.?\\d*)(?:,t-?\\d*\\.?\\d*);)?"
 
static QRegularExpression rxNonBreakingSpace
 
static QString rxNonBreakingSpaceStr = "\\\\~"
 
static QRegularExpression rxNoOp
 
static QRegularExpression rxNoOpEnd
 
static QString rxNoOpEndStr = "%%$"
 
static QString rxNoOpStr = "%%([^uUcCpPdD])"
 
static QRegularExpression rxObliqueAngleChange
 
static QString rxObliqueAngleChangeStr = "\\\\Q(\\d*\\.?\\d*);"
 
static QRegularExpression rxOptionalBreak
 
static QString rxOptionalBreakStr = "[ ]+"
 
static QRegularExpression rxOverlineOff
 
static QString rxOverlineOffStr = "\\\\o"
 
static QRegularExpression rxOverlineOn
 
static QString rxOverlineOnStr = "\\\\O"
 
static QRegularExpression rxParagraphFeed
 
static QString rxParagraphFeedStr = "\\\\P"
 
static QRegularExpression rxPlusMinus
 
static QString rxPlusMinusStr = "%%[pP]"
 
static QRegularExpression rxStackedText
 
static QString rxStackedTextStr = "\\\\S([^^]*)\\^([^;]*);"
 
static QRegularExpression rxStrikethroughOff
 
static QString rxStrikethroughOffStr = "\\\\k"
 
static QRegularExpression rxStrikethroughOn
 
static QString rxStrikethroughOnStr = "\\\\K"
 
static QRegularExpression rxTabIN
 
static QString rxTabINStr = "\\\\pxt(\\d*\\.?\\d*,?)*;"
 
static QRegularExpression rxTabMM
 
static QString rxTabMMStr = "\\\\pt(\\d*\\.?\\d*,?)*;"
 
static QRegularExpression rxTrackChange
 
static QString rxTrackChangeStr = "\\\\T(\\d*\\.?\\d*);"
 
static QRegularExpression rxUnderline
 
static QRegularExpression rxUnderlineChange
 
static QString rxUnderlineChangeStr = "\\\\L|\\\\l"
 
static QRegularExpression rxUnderlineOff
 
static QString rxUnderlineOffStr = "\\\\l"
 
static QRegularExpression rxUnderlineOn
 
static QString rxUnderlineOnStr = "\\\\L"
 
static QString rxUnderlineStr = "%%[uU]"
 
static QRegularExpression rxUnicode
 
static QString rxUnicodeStr = "\\\\[Uu]\\+([0-9a-fA-F]{4})"
 
static QRegularExpression rxWidthChange
 
static QString rxWidthChangeStr = "\\\\W(\\d*\\.?\\d*)x?;"
 
static QRegularExpression rxXAlignmentCenter
 
static QString rxXAlignmentCenterStr = "\\\\pxqc;"
 
static QRegularExpression rxXAlignmentLeft
 
static QString rxXAlignmentLeftStr = "\\\\pxql;"
 
static QRegularExpression rxXAlignmentRight
 
static QString rxXAlignmentRightStr = "\\\\pxqr;"
 
static QRegularExpression rxXFeed
 
static QString rxXFeedStr = "\\\\X"
 
static QRegularExpression rxXSpaceMText
 
static QString rxXSpaceMTextStr = "\\\\pxsm(\\d*\\.?\\d*),?[a-z]*;"
 

Private Member Functions

bool getBlockBold () const
 
QString getBlockFont () const
 
QString getBlockFontFile () const
 
double getBlockHeight () const
 
bool getBlockItalic () const
 
bool getBlockUnderline () const
 
QRectF getCharacterRect (const QFont &font, const QChar &ch) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
QRectF getCharacterRect (const QString &fontName, const QChar &ch) const
 
QTextCharFormat getCurrentFormat () const
 
QList< RPainterPathgetPainterPathsForBlock (const QString &blockText, const QList< QTextLayout::FormatRange > &formats, double &horizontalAdvance, double &horizontalAdvanceNoSpacing, double &horizontalAdvanceNoTrailingSpace, double &ascent, double &descent, double &usedHeight)
 
QList< RPainterPathgetPainterPathsForBlockCad (const QString &blockText, const QList< QTextLayout::FormatRange > &formats, double &horizontalAdvance, double &horizontalAdvanceNoSpacing, double &horizontalAdvanceNoTrailingSpace, double &ascent, double &descent, double &usedHeight)
 
QList< RPainterPathgetPainterPathsForBlockTtf (const QString &blockText, const QList< QTextLayout::FormatRange > &formats, double &horizontalAdvance, double &horizontalAdvanceNoSpacing, double &horizontalAdvanceNoTrailingSpace, double &ascent, double &descent, double &usedHeight)
 
QString getRichTextForBlock (const QString &blockText, const QList< QTextLayout::FormatRange > &formats)
 
bool getUseCadFont () const
 
void preparePath (RPainterPath &path, const RColor &color, double cursor, double cxfScale)
 
void preparePathColor (RPainterPath &path, const RColor &color)
 
void preparePathTransform (RPainterPath &path, double cursor, double cxfScale)
 
void setBlockBold (bool on)
 
void setBlockFont (const QString &f)
 
void setBlockFontFile (const QString &f)
 
void setBlockHeight (double h)
 
void setBlockItalic (bool on)
 
void setBlockUnderline (bool on)
 
void setCurrentFormat (QTextCharFormat f)
 
void setUseCadFont (bool on)
 

Private Attributes

QStack< bool > blockBold
 
QStack< QString > blockFont
 
QStack< QString > blockFontFile
 
QStack< double > blockHeight
 
QStack< bool > blockItalic
 
QStack< bool > blockUnderline
 
RBox boundingBox
 
QStack< QTextCharFormat > currentFormat
 
bool draft
 
double fontHeightFactor
 
double height
 
QList< QTransform > lineBlockTransforms
 
QStack< QStringList > openTags
 
QList< RPainterPathpainterPaths
 
QString richText
 
Target target
 
const RTextBasedDatatextData
 
QList< RTextLayouttextLayouts
 
QStack< bool > useCadFont
 
double width
 

Static Private Attributes

static QMutex m
 

Detailed Description

Renders formatted text into painter paths.

Scriptable:\nThis class is available in script environments.\n

Member Enumeration Documentation

◆ Target

Enumerator
PainterPaths 
RichText 

Constructor & Destructor Documentation

◆ RTextRenderer()

RTextRenderer::RTextRenderer ( const RTextBasedData & textData,
bool draft,
RTextRenderer::Target target,
double fontHeightFactor = 1.0 )

Member Function Documentation

◆ getBlockBold()

bool RTextRenderer::getBlockBold ( ) const
inlineprivate

◆ getBlockFont()

QString RTextRenderer::getBlockFont ( ) const
inlineprivate

◆ getBlockFontFile()

QString RTextRenderer::getBlockFontFile ( ) const
inlineprivate

◆ getBlockHeight()

double RTextRenderer::getBlockHeight ( ) const
inlineprivate

◆ getBlockItalic()

bool RTextRenderer::getBlockItalic ( ) const
inlineprivate

◆ getBlockUnderline()

bool RTextRenderer::getBlockUnderline ( ) const
inlineprivate

◆ getBoundingBox()

RBox RTextRenderer::getBoundingBox ( ) const
inline

◆ getCharacterRect() [1/2]

QRectF RTextRenderer::getCharacterRect ( const QFont & font,
const QChar & ch ) const
private

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

◆ getCharacterRect() [2/2]

QRectF RTextRenderer::getCharacterRect ( const QString & fontName,
const QChar & ch ) const
private
Returns
Bounding box of the given character with the given font in size '1', rendered at 0/0. Used to find out the CAD relevant height, ascent and descent of the font.

◆ getCurrentFormat()

QTextCharFormat RTextRenderer::getCurrentFormat ( ) const
inlineprivate

◆ getHeight()

double RTextRenderer::getHeight ( ) const
inline

◆ getPainterPaths()

QList< RPainterPath > RTextRenderer::getPainterPaths ( ) const
inline

◆ getPainterPathsForBlock()

QList< RPainterPath > RTextRenderer::getPainterPathsForBlock ( const QString & blockText,
const QList< QTextLayout::FormatRange > & formats,
double & horizontalAdvance,
double & horizontalAdvanceNoSpacing,
double & horizontalAdvanceNoTrailingSpace,
double & ascent,
double & descent,
double & usedHeight )
private

◆ getPainterPathsForBlockCad()

QList< RPainterPath > RTextRenderer::getPainterPathsForBlockCad ( const QString & blockText,
const QList< QTextLayout::FormatRange > & formats,
double & horizontalAdvance,
double & horizontalAdvanceNoSpacing,
double & horizontalAdvanceNoTrailingSpace,
double & ascent,
double & descent,
double & usedHeight )
private
Returns
Painter paths for the given text block in CAD font, positioned at 0/0 (bottom left corner) and with a font size of 1 drawing unit.

◆ getPainterPathsForBlockTtf()

QList< RPainterPath > RTextRenderer::getPainterPathsForBlockTtf ( const QString & blockText,
const QList< QTextLayout::FormatRange > & formats,
double & horizontalAdvance,
double & horizontalAdvanceNoSpacing,
double & horizontalAdvanceNoTrailingSpace,
double & ascent,
double & descent,
double & usedHeight )
private
Returns
Painter paths for the given text block in TTF font, positioned at 0/0 (bottom left corner) and with a font size of 1 drawing unit.

◆ getRichText()

QString RTextRenderer::getRichText ( ) const
inline

◆ getRichTextForBlock()

QString RTextRenderer::getRichTextForBlock ( const QString & blockText,
const QList< QTextLayout::FormatRange > & formats )
private

◆ getTextLayouts()

QList< RTextLayout > RTextRenderer::getTextLayouts ( ) const
inline

◆ getUseCadFont()

bool RTextRenderer::getUseCadFont ( ) const
inlineprivate

◆ getWidth()

double RTextRenderer::getWidth ( ) const
inline

◆ lockForDrawing()

static void RTextRenderer::lockForDrawing ( )
inlinestatic

◆ preparePath()

void RTextRenderer::preparePath ( RPainterPath & path,
const RColor & color,
double cursor,
double cxfScale )
private

◆ preparePathColor()

void RTextRenderer::preparePathColor ( RPainterPath & path,
const RColor & color )
private

◆ preparePathTransform()

void RTextRenderer::preparePathTransform ( RPainterPath & path,
double cursor,
double cxfScale )
private

◆ render()

void RTextRenderer::render ( )

Renders the text data into painter paths.

◆ renderSimple()

void RTextRenderer::renderSimple ( )

Renders the text data into painter paths.

◆ setBlockBold()

void RTextRenderer::setBlockBold ( bool on)
inlineprivate

◆ setBlockFont()

void RTextRenderer::setBlockFont ( const QString & f)
inlineprivate

◆ setBlockFontFile()

void RTextRenderer::setBlockFontFile ( const QString & f)
inlineprivate

◆ setBlockHeight()

void RTextRenderer::setBlockHeight ( double h)
inlineprivate

◆ setBlockItalic()

void RTextRenderer::setBlockItalic ( bool on)
inlineprivate

◆ setBlockUnderline()

void RTextRenderer::setBlockUnderline ( bool on)
inlineprivate

◆ setCurrentFormat()

void RTextRenderer::setCurrentFormat ( QTextCharFormat f)
inlineprivate

◆ setUseCadFont()

void RTextRenderer::setUseCadFont ( bool on)
inlineprivate

◆ unlockForDrawing()

static void RTextRenderer::unlockForDrawing ( )
inlinestatic

Member Data Documentation

◆ blockBold

QStack<bool> RTextRenderer::blockBold
private

◆ blockFont

QStack<QString> RTextRenderer::blockFont
private

◆ blockFontFile

QStack<QString> RTextRenderer::blockFontFile
private

◆ blockHeight

QStack<double> RTextRenderer::blockHeight
private

◆ blockItalic

QStack<bool> RTextRenderer::blockItalic
private

◆ blockUnderline

QStack<bool> RTextRenderer::blockUnderline
private

◆ boundingBox

RBox RTextRenderer::boundingBox
private

◆ chDegree

QChar RTextRenderer::chDegree = QChar(0x00b0)
static

Copyright (c) 2011-2018 by Andrew Mustun.

All rights reserved.

This file is part of the QCAD project.

QCAD is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

QCAD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with QCAD.

◆ chDiameter

QChar RTextRenderer::chDiameter = QChar(0x00f8)
static

◆ chPlusMinus

QChar RTextRenderer::chPlusMinus = QChar(0x00b1)
static

◆ currentFormat

QStack<QTextCharFormat> RTextRenderer::currentFormat
private

◆ draft

bool RTextRenderer::draft
private

◆ escDegree

QRegularExpression RTextRenderer::escDegree
static

◆ escDegreeStr

QString RTextRenderer::escDegreeStr = "%%d"
static

◆ escDiameter

QRegularExpression RTextRenderer::escDiameter
static

◆ escDiameterStr

QString RTextRenderer::escDiameterStr = "%%c"
static

◆ escNoOp

QRegularExpression RTextRenderer::escNoOp
static

◆ escNoOpStr

QString RTextRenderer::escNoOpStr = "%%"
static

◆ escPlusMinus

QRegularExpression RTextRenderer::escPlusMinus
static

◆ escPlusMinusStr

QString RTextRenderer::escPlusMinusStr = "%%p"
static

◆ escUnderline

QRegularExpression RTextRenderer::escUnderline
static

◆ escUnderlineStr

QString RTextRenderer::escUnderlineStr = "%%u"
static

◆ fontHeightFactor

double RTextRenderer::fontHeightFactor
private

◆ height

double RTextRenderer::height
private

◆ lineBlockTransforms

QList<QTransform> RTextRenderer::lineBlockTransforms
private

◆ m

QMutex RTextRenderer::m
staticprivate

◆ openTags

QStack<QStringList> RTextRenderer::openTags
private

◆ painterPaths

QList<RPainterPath> RTextRenderer::painterPaths
private

◆ richText

QString RTextRenderer::richText
private

◆ rxAlignmentCenter

QRegularExpression RTextRenderer::rxAlignmentCenter
static

◆ rxAlignmentCenterStr

QString RTextRenderer::rxAlignmentCenterStr = "\\\\pqc;"
static

◆ rxAlignmentChange

QRegularExpression RTextRenderer::rxAlignmentChange
static

◆ rxAlignmentChangeBlock

QRegularExpression RTextRenderer::rxAlignmentChangeBlock
static

◆ rxAlignmentChangeBlockStr

QString RTextRenderer::rxAlignmentChangeBlockStr = "\\\\A(\\d+)"
static

◆ rxAlignmentChangeStr

QString RTextRenderer::rxAlignmentChangeStr = "\\\\A(\\d+);"
static

◆ rxAlignmentLeft

QRegularExpression RTextRenderer::rxAlignmentLeft
static

◆ rxAlignmentLeftStr

QString RTextRenderer::rxAlignmentLeftStr = "\\\\pql;"
static

◆ rxAlignmentRight

QRegularExpression RTextRenderer::rxAlignmentRight
static

◆ rxAlignmentRightStr

QString RTextRenderer::rxAlignmentRightStr = "\\\\pqr;"
static

◆ rxAll

QRegularExpression RTextRenderer::rxAll
static

◆ rxAllBreak

QRegularExpression RTextRenderer::rxAllBreak
static

◆ rxAllBreakStr

QString RTextRenderer::rxAllBreakStr = "(" + rxAllTmp + "|" + RTextRenderer::rxOptionalBreakStr + ")"
static

◆ rxAllStr

QString RTextRenderer::rxAllStr = "(" + rxAllTmp + ")"
static

◆ rxBackslash

QRegularExpression RTextRenderer::rxBackslash
static

◆ rxBackslashStr

QString RTextRenderer::rxBackslashStr = "\\\\\\\\"
static

◆ rxBeginBlock

QRegularExpression RTextRenderer::rxBeginBlock
static

◆ rxBeginBlockStr

QString RTextRenderer::rxBeginBlockStr = "\\{"
static

◆ rxColorChangeCustom

QRegularExpression RTextRenderer::rxColorChangeCustom
static

◆ rxColorChangeCustomStr

QString RTextRenderer::rxColorChangeCustomStr ="\\\\c(\\d+);"
static

◆ rxColorChangeIndex

QRegularExpression RTextRenderer::rxColorChangeIndex
static

◆ rxColorChangeIndexStr

QString RTextRenderer::rxColorChangeIndexStr = "\\\\C(\\d+);"
static

◆ rxCurlyClose

QRegularExpression RTextRenderer::rxCurlyClose
static

◆ rxCurlyCloseStr

QString RTextRenderer::rxCurlyCloseStr = "\\\\\\}"
static

◆ rxCurlyOpen

QRegularExpression RTextRenderer::rxCurlyOpen
static

◆ rxCurlyOpenStr

QString RTextRenderer::rxCurlyOpenStr = "\\\\\\{"
static

◆ rxDegree

QRegularExpression RTextRenderer::rxDegree
static

◆ rxDegreeStr

QString RTextRenderer::rxDegreeStr = "%%[dD]"
static

◆ rxDiameter

QRegularExpression RTextRenderer::rxDiameter
static

◆ rxDiameterStr

QString RTextRenderer::rxDiameterStr = "%%[cC]"
static

◆ rxEndBlock

QRegularExpression RTextRenderer::rxEndBlock
static

◆ rxEndBlockStr

QString RTextRenderer::rxEndBlockStr = "\\}"
static

◆ rxFontChangeCad

QRegularExpression RTextRenderer::rxFontChangeCad
static

◆ rxFontChangeCadStr

QString RTextRenderer::rxFontChangeCadStr
static
Initial value:
= "\\\\F([^|;]*)"
"[^;]*"
";"

◆ rxFontChangeTtf

QRegularExpression RTextRenderer::rxFontChangeTtf
static

◆ rxFontChangeTtfStr

QString RTextRenderer::rxFontChangeTtfStr
static
Initial value:
= "\\\\f([^|;]*)"
"(?:\\|+([bicp])(\\d+))?"
"(?:\\|+([bicp])(\\d+))?"
"(?:\\|+([bicp])(\\d+))?"
"(?:\\|+([bicp])(\\d+))?"
"([^;]*)"
";"

◆ rxHeightChange

QRegularExpression RTextRenderer::rxHeightChange
static

◆ rxHeightChangeStr

QString RTextRenderer::rxHeightChangeStr = "\\\\H(\\d*\\.?\\d*)(x?);"
static

◆ rxLineFeed

QRegularExpression RTextRenderer::rxLineFeed
static

◆ rxLineFeedStr

QString RTextRenderer::rxLineFeedStr = "\\\\p(?:x?i(-?\\d*\\.?\\d*)(?:,l-?\\d*\\.?\\d*)(?:,t-?\\d*\\.?\\d*);)?"
static

◆ rxNonBreakingSpace

QRegularExpression RTextRenderer::rxNonBreakingSpace
static

◆ rxNonBreakingSpaceStr

QString RTextRenderer::rxNonBreakingSpaceStr = "\\\\~"
static

◆ rxNoOp

QRegularExpression RTextRenderer::rxNoOp
static

◆ rxNoOpEnd

QRegularExpression RTextRenderer::rxNoOpEnd
static

◆ rxNoOpEndStr

QString RTextRenderer::rxNoOpEndStr = "%%$"
static

◆ rxNoOpStr

QString RTextRenderer::rxNoOpStr = "%%([^uUcCpPdD])"
static

◆ rxObliqueAngleChange

QRegularExpression RTextRenderer::rxObliqueAngleChange
static

◆ rxObliqueAngleChangeStr

QString RTextRenderer::rxObliqueAngleChangeStr = "\\\\Q(\\d*\\.?\\d*);"
static

◆ rxOptionalBreak

QRegularExpression RTextRenderer::rxOptionalBreak
static

◆ rxOptionalBreakStr

QString RTextRenderer::rxOptionalBreakStr = "[ ]+"
static

◆ rxOverlineOff

QRegularExpression RTextRenderer::rxOverlineOff
static

◆ rxOverlineOffStr

QString RTextRenderer::rxOverlineOffStr = "\\\\o"
static

◆ rxOverlineOn

QRegularExpression RTextRenderer::rxOverlineOn
static

◆ rxOverlineOnStr

QString RTextRenderer::rxOverlineOnStr = "\\\\O"
static

◆ rxParagraphFeed

QRegularExpression RTextRenderer::rxParagraphFeed
static

◆ rxParagraphFeedStr

QString RTextRenderer::rxParagraphFeedStr = "\\\\P"
static

◆ rxPlusMinus

QRegularExpression RTextRenderer::rxPlusMinus
static

◆ rxPlusMinusStr

QString RTextRenderer::rxPlusMinusStr = "%%[pP]"
static

◆ rxStackedText

QRegularExpression RTextRenderer::rxStackedText
static

◆ rxStackedTextStr

QString RTextRenderer::rxStackedTextStr = "\\\\S([^^]*)\\^([^;]*);"
static

◆ rxStrikethroughOff

QRegularExpression RTextRenderer::rxStrikethroughOff
static

◆ rxStrikethroughOffStr

QString RTextRenderer::rxStrikethroughOffStr = "\\\\k"
static

◆ rxStrikethroughOn

QRegularExpression RTextRenderer::rxStrikethroughOn
static

◆ rxStrikethroughOnStr

QString RTextRenderer::rxStrikethroughOnStr = "\\\\K"
static

◆ rxTabIN

QRegularExpression RTextRenderer::rxTabIN
static

◆ rxTabINStr

QString RTextRenderer::rxTabINStr = "\\\\pxt(\\d*\\.?\\d*,?)*;"
static

◆ rxTabMM

QRegularExpression RTextRenderer::rxTabMM
static

◆ rxTabMMStr

QString RTextRenderer::rxTabMMStr = "\\\\pt(\\d*\\.?\\d*,?)*;"
static

◆ rxTrackChange

QRegularExpression RTextRenderer::rxTrackChange
static

◆ rxTrackChangeStr

QString RTextRenderer::rxTrackChangeStr = "\\\\T(\\d*\\.?\\d*);"
static

◆ rxUnderline

QRegularExpression RTextRenderer::rxUnderline
static

◆ rxUnderlineChange

QRegularExpression RTextRenderer::rxUnderlineChange
static

◆ rxUnderlineChangeStr

QString RTextRenderer::rxUnderlineChangeStr = "\\\\L|\\\\l"
static

◆ rxUnderlineOff

QRegularExpression RTextRenderer::rxUnderlineOff
static

◆ rxUnderlineOffStr

QString RTextRenderer::rxUnderlineOffStr = "\\\\l"
static

◆ rxUnderlineOn

QRegularExpression RTextRenderer::rxUnderlineOn
static

◆ rxUnderlineOnStr

QString RTextRenderer::rxUnderlineOnStr = "\\\\L"
static

◆ rxUnderlineStr

QString RTextRenderer::rxUnderlineStr = "%%[uU]"
static

◆ rxUnicode

QRegularExpression RTextRenderer::rxUnicode
static

◆ rxUnicodeStr

QString RTextRenderer::rxUnicodeStr = "\\\\[Uu]\\+([0-9a-fA-F]{4})"
static

◆ rxWidthChange

QRegularExpression RTextRenderer::rxWidthChange
static

◆ rxWidthChangeStr

QString RTextRenderer::rxWidthChangeStr = "\\\\W(\\d*\\.?\\d*)x?;"
static

◆ rxXAlignmentCenter

QRegularExpression RTextRenderer::rxXAlignmentCenter
static

◆ rxXAlignmentCenterStr

QString RTextRenderer::rxXAlignmentCenterStr = "\\\\pxqc;"
static

◆ rxXAlignmentLeft

QRegularExpression RTextRenderer::rxXAlignmentLeft
static

◆ rxXAlignmentLeftStr

QString RTextRenderer::rxXAlignmentLeftStr = "\\\\pxql;"
static

◆ rxXAlignmentRight

QRegularExpression RTextRenderer::rxXAlignmentRight
static

◆ rxXAlignmentRightStr

QString RTextRenderer::rxXAlignmentRightStr = "\\\\pxqr;"
static

◆ rxXFeed

QRegularExpression RTextRenderer::rxXFeed
static

◆ rxXFeedStr

QString RTextRenderer::rxXFeedStr = "\\\\X"
static

◆ rxXSpaceMText

QRegularExpression RTextRenderer::rxXSpaceMText
static

◆ rxXSpaceMTextStr

QString RTextRenderer::rxXSpaceMTextStr = "\\\\pxsm(\\d*\\.?\\d*),?[a-z]*;"
static

◆ target

Target RTextRenderer::target
private

◆ textData

const RTextBasedData& RTextRenderer::textData
private

◆ textLayouts

QList<RTextLayout> RTextRenderer::textLayouts
private

◆ useCadFont

QStack<bool> RTextRenderer::useCadFont
private

◆ width

double RTextRenderer::width
private

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