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
qfontengine.cpp File Reference

(6fc0f4ccb4a90a29c2af89ffd127ec38fd4e7ac9)

#include <qdebug.h>
#include <private/qfontengine_p.h>
#include <private/qfontengineglyphcache_p.h>
#include <private/qguiapplication_p.h>
#include <qpa/qplatformfontdatabase.h>
#include <qpa/qplatformintegration.h>
#include "qbitmap.h"
#include "qpainter.h"
#include "qpainterpath.h"
#include "qvarlengtharray.h"
#include "qtextengine_p.h"
#include <qmath.h>
#include <qendian.h>
#include <private/qstringiterator_p.h>
#include <algorithm>
#include <limits.h>
Include dependency graph for qfontengine.cpp:

Go to the source code of this file.

Macros

#define kBearingNotInitialized   std::numeric_limits<qreal>::max()
#define q16Dot16ToFloat(i)
#define kMinLeftSideBearingOffset   12
#define kMinRightSideBearingOffset   14
#define GRID(x, y)
#define SET(x, y)

Enumerations

enum  {
  EdgeRight = 0x1 , EdgeDown = 0x2 , EdgeLeft = 0x4 , EdgeUp = 0x8 ,
  EdgeRight = 0x1 , EdgeDown = 0x2 , EdgeLeft = 0x4 , EdgeUp = 0x8
}
enum  {
  EdgeRight = 0x1 , EdgeDown = 0x2 , EdgeLeft = 0x4 , EdgeUp = 0x8 ,
  EdgeRight = 0x1 , EdgeDown = 0x2 , EdgeLeft = 0x4 , EdgeUp = 0x8
}

Functions

static bool qtransform_equals_no_translate (const QTransform &a, const QTransform &b)
template<typename T>
static bool qSafeFromBigEndian (const uchar *source, const uchar *end, T *output)
static bool qt_get_font_table_default (void *user_data, uint tag, uchar *buffer, uint *length)
static void collectSingleContour (qreal x0, qreal y0, uint *grid, int x, int y, int w, int h, QPainterPath *path)
Q_GUI_EXPORT void qt_addBitmapToPath (qreal x0, qreal y0, const uchar *image_data, int bpl, int w, int h, QPainterPath *path)
static QFixed kerning (int left, int right, const QFontEngine::KernPair *pairs, int numPairs)
static glyph_t stripped (glyph_t glyph)
QStringList qt_fallbacksForFamily (const QString &family, QFont::Style style, QFont::StyleHint styleHint, QFontDatabasePrivate::ExtendedScript script)

Macro Definition Documentation

◆ GRID

#define GRID ( x,
y )
Value:
grid[(y)*(w+1) + (x)]
GLint GLint GLint GLint GLint x
GLfloat GLfloat GLfloat w
[0]
GLint y

Definition at line 661 of file qfontengine.cpp.

◆ kBearingNotInitialized

#define kBearingNotInitialized   std::numeric_limits<qreal>::max()

Definition at line 104 of file qfontengine.cpp.

◆ kMinLeftSideBearingOffset

#define kMinLeftSideBearingOffset   12

Definition at line 539 of file qfontengine.cpp.

◆ kMinRightSideBearingOffset

#define kMinRightSideBearingOffset   14

Definition at line 540 of file qfontengine.cpp.

◆ q16Dot16ToFloat

#define q16Dot16ToFloat ( i)
Value:
((i) / 65536.0)

Definition at line 537 of file qfontengine.cpp.

◆ SET

#define SET ( x,
y )
Value:
(*(image_data + (y)*bpl + ((x) >> 3)) & (0x80 >> ((x) & 7)))

Definition at line 662 of file qfontengine.cpp.

Enumeration Type Documentation

◆ anonymous enum [1/2]

anonymous enum
Enumerator
EdgeRight 
EdgeDown 
EdgeLeft 
EdgeUp 
EdgeRight 
EdgeDown 
EdgeLeft 
EdgeUp 

Definition at line 664 of file qfontengine.cpp.

◆ anonymous enum [2/2]

anonymous enum
Enumerator
EdgeRight 
EdgeDown 
EdgeLeft 
EdgeUp 
EdgeRight 
EdgeDown 
EdgeLeft 
EdgeUp 

Definition at line 664 of file qfontengine.cpp.

Function Documentation

◆ collectSingleContour()

void collectSingleContour ( qreal x0,
qreal y0,
uint * grid,
int x,
int y,
int w,
int h,
QPainterPath * path )
static

Definition at line 670 of file qfontengine.cpp.

References EdgeDown, EdgeLeft, EdgeRight, and EdgeUp.

◆ kerning()

QFixed kerning ( int left,
int right,
const QFontEngine::KernPair * pairs,
int numPairs )
inlinestatic

Definition at line 1139 of file qfontengine.cpp.

◆ qSafeFromBigEndian()

template<typename T>
bool qSafeFromBigEndian ( const uchar * source,
const uchar * end,
T * output )
inlinestatic

Definition at line 54 of file qfontengine.cpp.

◆ qt_addBitmapToPath()

Q_GUI_EXPORT void qt_addBitmapToPath ( qreal x0,
qreal y0,
const uchar * image_data,
int bpl,
int w,
int h,
QPainterPath * path )

Definition at line 716 of file qfontengine.cpp.

References EdgeDown, EdgeLeft, EdgeRight, and EdgeUp.

◆ qt_fallbacksForFamily()

QStringList qt_fallbacksForFamily ( const QString & family,
QFont::Style style,
QFont::StyleHint styleHint,
QFontDatabasePrivate::ExtendedScript script )

Definition at line 716 of file qfontdatabase.cpp.

◆ qt_get_font_table_default()

bool qt_get_font_table_default ( void * user_data,
uint tag,
uchar * buffer,
uint * length )
static

Definition at line 74 of file qfontengine.cpp.

References QPainter::QFontEngine.

Here is the call graph for this function:

◆ qtransform_equals_no_translate()

bool qtransform_equals_no_translate ( const QTransform & a,
const QTransform & b )
inlinestatic

Definition at line 36 of file qfontengine.cpp.

◆ stripped()

glyph_t stripped ( glyph_t glyph)
inlinestatic

Definition at line 1834 of file qfontengine.cpp.