Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qdistancefield.cpp File Reference

(ad7a9155c1b855ed6e06929fb283254910059231)

#include "qdistancefield_p.h"
#include <qmath.h>
#include <QtCore/qalloc.h>
#include <private/qdatabuffer_p.h>
#include <private/qimage_p.h>
#include <private/qpathsimplifier_p.h>
Include dependency graph for qdistancefield.cpp:

Go to the source code of this file.

Functions

 Q_STATIC_LOGGING_CATEGORY (lcDistanceField, "qt.distanceField")
template<FillClip clip, FillHDir dir>
void fillLine (qint32 *, int, int, int, qint32, qint32)
template<>
void fillLine< Clip, LeftToRight > (qint32 *line, int width, int lx, int rx, qint32 d, qint32 dd)
template<>
void fillLine< Clip, RightToLeft > (qint32 *line, int width, int lx, int rx, qint32 d, qint32 dd)
template<>
void fillLine< NoClip, LeftToRight > (qint32 *line, int, int lx, int rx, qint32 d, qint32 dd)
template<>
void fillLine< NoClip, RightToLeft > (qint32 *line, int, int lx, int rx, qint32 d, qint32 dd)
template<FillClip clip, FillVDir vDir, FillHDir hDir>
void fillLines (qint32 *bits, int width, int height, int upperY, int lowerY, int &lx, int ldx, int &rx, int rdx, qint32 &d, qint32 ddy, qint32 ddx)
template<FillClip clip>
void drawTriangle (qint32 *bits, int width, int height, const QPoint *center, const QPoint *v1, const QPoint *v2, qint32 value)
template<FillClip clip>
void drawRectangle (qint32 *bits, int width, int height, const QPoint *int1, const QPoint *center1, const QPoint *ext1, const QPoint *int2, const QPoint *center2, const QPoint *ext2, qint32 extValue)
static void drawPolygons (qint32 *bits, int width, int height, const QPoint *vertices, const quint32 *indices, int indexCount, qint32 value)
static void makeDistanceField (QDistanceFieldData *data, const QPainterPath &path, int dfScale, int offs)
static bool imageHasNarrowOutlines (const QImage &im)
static void initialDistanceFieldFactor ()
bool qt_fontHasNarrowOutlines (QFontEngine *fontEngine)
bool qt_fontHasNarrowOutlines (const QRawFont &f)
int QT_DISTANCEFIELD_BASEFONTSIZE (bool narrowOutlineFont)
int QT_DISTANCEFIELD_SCALE (bool narrowOutlineFont)
int QT_DISTANCEFIELD_RADIUS (bool narrowOutlineFont)
int QT_DISTANCEFIELD_HIGHGLYPHCOUNT ()
template<>
void fillLine< Clip, LeftToRight > (qint32 *line, int width, int lx, int rx, qint32 d, qint32 dd)
template<>
void fillLine< Clip, RightToLeft > (qint32 *line, int width, int lx, int rx, qint32 d, qint32 dd)
template<>
void fillLine< NoClip, LeftToRight > (qint32 *line, int, int lx, int rx, qint32 d, qint32 dd)
template<>
void fillLine< NoClip, RightToLeft > (qint32 *line, int, int lx, int rx, qint32 d, qint32 dd)

Variables

static int QT_DISTANCEFIELD_DEFAULT_BASEFONTSIZE = 54
static int QT_DISTANCEFIELD_DEFAULT_SCALE = 16
static int QT_DISTANCEFIELD_DEFAULT_RADIUS = 80
static int QT_DISTANCEFIELD_DEFAULT_HIGHGLYPHCOUNT = 2000

Function Documentation

◆ drawPolygons()

void drawPolygons ( qint32 * bits,
int width,
int height,
const QPoint * vertices,
const quint32 * indices,
int indexCount,
qint32 value )
static

Definition at line 402 of file qdistancefield.cpp.

◆ drawRectangle()

template<FillClip clip>
void drawRectangle ( qint32 * bits,
int width,
int height,
const QPoint * int1,
const QPoint * center1,
const QPoint * ext1,
const QPoint * int2,
const QPoint * center2,
const QPoint * ext2,
qint32 extValue )

Definition at line 258 of file qdistancefield.cpp.

◆ drawTriangle()

template<FillClip clip>
void drawTriangle ( qint32 * bits,
int width,
int height,
const QPoint * center,
const QPoint * v1,
const QPoint * v2,
qint32 value )

Definition at line 140 of file qdistancefield.cpp.

◆ fillLine()

template<FillClip clip, FillHDir dir>
void fillLine ( qint32 * ,
int ,
int ,
int ,
qint32 ,
qint32  )
inline

Definition at line 39 of file qdistancefield.cpp.

◆ fillLine< Clip, LeftToRight >() [1/2]

template<>
void fillLine< Clip, LeftToRight > ( qint32 * line,
int width,
int lx,
int rx,
qint32 d,
qint32 dd )
inline

Definition at line 44 of file qdistancefield.cpp.

◆ fillLine< Clip, LeftToRight >() [2/2]

template<>
void fillLine< Clip, LeftToRight > ( qint32 * line,
int width,
int lx,
int rx,
qint32 d,
qint32 dd )
inline

Definition at line 44 of file qdistancefield.cpp.

◆ fillLine< Clip, RightToLeft >() [1/2]

template<>
void fillLine< Clip, RightToLeft > ( qint32 * line,
int width,
int lx,
int rx,
qint32 d,
qint32 dd )
inline

Definition at line 61 of file qdistancefield.cpp.

Referenced by fillLines().

Here is the caller graph for this function:

◆ fillLine< Clip, RightToLeft >() [2/2]

template<>
void fillLine< Clip, RightToLeft > ( qint32 * line,
int width,
int lx,
int rx,
qint32 d,
qint32 dd )
inline

Definition at line 61 of file qdistancefield.cpp.

◆ fillLine< NoClip, LeftToRight >() [1/2]

template<>
void fillLine< NoClip, LeftToRight > ( qint32 * line,
int ,
int lx,
int rx,
qint32 d,
qint32 dd )
inline

Definition at line 78 of file qdistancefield.cpp.

◆ fillLine< NoClip, LeftToRight >() [2/2]

template<>
void fillLine< NoClip, LeftToRight > ( qint32 * line,
int ,
int lx,
int rx,
qint32 d,
qint32 dd )
inline

Definition at line 78 of file qdistancefield.cpp.

◆ fillLine< NoClip, RightToLeft >() [1/2]

template<>
void fillLine< NoClip, RightToLeft > ( qint32 * line,
int ,
int lx,
int rx,
qint32 d,
qint32 dd )
inline

Definition at line 95 of file qdistancefield.cpp.

◆ fillLine< NoClip, RightToLeft >() [2/2]

template<>
void fillLine< NoClip, RightToLeft > ( qint32 * line,
int ,
int lx,
int rx,
qint32 d,
qint32 dd )
inline

Definition at line 95 of file qdistancefield.cpp.

◆ fillLines()

template<FillClip clip, FillVDir vDir, FillHDir hDir>
void fillLines ( qint32 * bits,
int width,
int height,
int upperY,
int lowerY,
int & lx,
int ldx,
int & rx,
int rdx,
qint32 & d,
qint32 ddy,
qint32 ddx )
inline

Definition at line 112 of file qdistancefield.cpp.

References fillLine< Clip, RightToLeft >().

Here is the call graph for this function:

◆ imageHasNarrowOutlines()

bool imageHasNarrowOutlines ( const QImage & im)
static

Definition at line 672 of file qdistancefield.cpp.

◆ initialDistanceFieldFactor()

void initialDistanceFieldFactor ( )
static

Definition at line 720 of file qdistancefield.cpp.

References QT_DISTANCEFIELD_DEFAULT_BASEFONTSIZE, QT_DISTANCEFIELD_DEFAULT_HIGHGLYPHCOUNT, QT_DISTANCEFIELD_DEFAULT_RADIUS, and QT_DISTANCEFIELD_DEFAULT_SCALE.

Referenced by QT_DISTANCEFIELD_BASEFONTSIZE(), QT_DISTANCEFIELD_HIGHGLYPHCOUNT(), QT_DISTANCEFIELD_RADIUS(), QT_DISTANCEFIELD_SCALE(), qt_fontHasNarrowOutlines(), and qt_fontHasNarrowOutlines().

Here is the caller graph for this function:

◆ makeDistanceField()

void makeDistanceField ( QDistanceFieldData * data,
const QPainterPath & path,
int dfScale,
int offs )
static

Definition at line 458 of file qdistancefield.cpp.

◆ Q_STATIC_LOGGING_CATEGORY()

Q_STATIC_LOGGING_CATEGORY ( lcDistanceField ,
"qt.distanceField"  )

◆ QT_DISTANCEFIELD_BASEFONTSIZE()

int QT_DISTANCEFIELD_BASEFONTSIZE ( bool narrowOutlineFont)

Definition at line 781 of file qdistancefield.cpp.

References initialDistanceFieldFactor(), and QT_DISTANCEFIELD_DEFAULT_BASEFONTSIZE.

Here is the call graph for this function:

◆ QT_DISTANCEFIELD_HIGHGLYPHCOUNT()

int QT_DISTANCEFIELD_HIGHGLYPHCOUNT ( )

Definition at line 811 of file qdistancefield.cpp.

References initialDistanceFieldFactor(), and QT_DISTANCEFIELD_DEFAULT_HIGHGLYPHCOUNT.

Here is the call graph for this function:

◆ QT_DISTANCEFIELD_RADIUS()

int QT_DISTANCEFIELD_RADIUS ( bool narrowOutlineFont)

Definition at line 801 of file qdistancefield.cpp.

References initialDistanceFieldFactor(), and QT_DISTANCEFIELD_DEFAULT_RADIUS.

Here is the call graph for this function:

◆ QT_DISTANCEFIELD_SCALE()

int QT_DISTANCEFIELD_SCALE ( bool narrowOutlineFont)

Definition at line 791 of file qdistancefield.cpp.

References initialDistanceFieldFactor(), and QT_DISTANCEFIELD_DEFAULT_SCALE.

Here is the call graph for this function:

◆ qt_fontHasNarrowOutlines() [1/2]

bool qt_fontHasNarrowOutlines ( const QRawFont & f)

Definition at line 765 of file qdistancefield.cpp.

References initialDistanceFieldFactor().

Here is the call graph for this function:

◆ qt_fontHasNarrowOutlines() [2/2]

bool qt_fontHasNarrowOutlines ( QFontEngine * fontEngine)

Definition at line 746 of file qdistancefield.cpp.

References initialDistanceFieldFactor(), and QT_DISTANCEFIELD_DEFAULT_BASEFONTSIZE.

Here is the call graph for this function:

Variable Documentation

◆ QT_DISTANCEFIELD_DEFAULT_BASEFONTSIZE

int QT_DISTANCEFIELD_DEFAULT_BASEFONTSIZE = 54
static

◆ QT_DISTANCEFIELD_DEFAULT_HIGHGLYPHCOUNT

int QT_DISTANCEFIELD_DEFAULT_HIGHGLYPHCOUNT = 2000
static

◆ QT_DISTANCEFIELD_DEFAULT_RADIUS

int QT_DISTANCEFIELD_DEFAULT_RADIUS = 80
static

Definition at line 717 of file qdistancefield.cpp.

Referenced by initialDistanceFieldFactor(), and QT_DISTANCEFIELD_RADIUS().

◆ QT_DISTANCEFIELD_DEFAULT_SCALE

int QT_DISTANCEFIELD_DEFAULT_SCALE = 16
static

Definition at line 716 of file qdistancefield.cpp.

Referenced by initialDistanceFieldFactor(), and QT_DISTANCEFIELD_SCALE().