![]() |
Qt 6.x
The Qt SDK
|
#include <qtextureglyphcache_p.h>
Classes | |
struct | Coord |
struct | GlyphAndSubPixelPosition |
Public Member Functions | |
QTextureGlyphCache (QFontEngine::GlyphFormat format, const QTransform &matrix, const QColor &color=QColor()) | |
~QTextureGlyphCache () | |
bool | populate (QFontEngine *fontEngine, qsizetype numGlyphs, const glyph_t *glyphs, const QFixedPoint *positions, QPainter::RenderHints renderHints=QPainter::RenderHints(), bool includeGlyphCacheScale=false) |
bool | hasPendingGlyphs () const |
void | fillInPendingGlyphs () |
virtual void | createTextureData (int width, int height)=0 |
virtual void | resizeTextureData (int width, int height)=0 |
virtual int | glyphPadding () const |
virtual void | beginFillTexture () |
virtual void | fillTexture (const Coord &coord, glyph_t glyph, const QFixedPoint &subPixelPosition)=0 |
virtual void | endFillTexture () |
void | createCache (int width, int height) |
void | resizeCache (int width, int height) |
bool | isNull () const |
virtual int | maxTextureWidth () const |
virtual int | maxTextureHeight () const |
QImage | textureMapForGlyph (glyph_t g, const QFixedPoint &subPixelPosition) const |
![]() | |
QFontEngineGlyphCache (QFontEngine::GlyphFormat format, const QTransform &matrix, const QColor &color=QColor()) | |
virtual | ~QFontEngineGlyphCache () |
QFontEngine::GlyphFormat | glyphFormat () const |
const QTransform & | transform () const |
const QColor & | color () const |
![]() | |
QSharedData () noexcept | |
Constructs a QSharedData object with a reference count of 0. | |
QSharedData (const QSharedData &) noexcept | |
Constructs a QSharedData object with reference count 0. | |
QSharedData & | operator= (const QSharedData &)=delete |
~QSharedData ()=default | |
Public Attributes | |
QHash< GlyphAndSubPixelPosition, Coord > | coords |
![]() | |
QFontEngine::GlyphFormat | m_format |
QTransform | m_transform |
QColor | m_color |
![]() | |
QAtomicInt | ref |
Protected Member Functions | |
int | calculateSubPixelPositionCount (glyph_t) const |
Protected Attributes | |
QFontEngine * | m_current_fontengine |
QHash< GlyphAndSubPixelPosition, Coord > | m_pendingGlyphs |
int | m_w |
int | m_h |
int | m_cx |
int | m_cy |
int | m_currentRowHeight |
Definition at line 38 of file qtextureglyphcache_p.h.
|
inline |
Definition at line 41 of file qtextureglyphcache_p.h.
QT_BEGIN_NAMESPACE QTextureGlyphCache::~QTextureGlyphCache | ( | ) |
Definition at line 17 of file qtextureglyphcache.cpp.
|
inlinevirtual |
Reimplemented in QSGRhiTextureGlyphCache.
Definition at line 90 of file qtextureglyphcache_p.h.
Referenced by fillInPendingGlyphs().
|
protected |
Definition at line 21 of file qtextureglyphcache.cpp.
References QFontEngine::addGlyphsToPath(), QFixed::fromReal(), i, images, j, m_current_fontengine, and textureMapForGlyph().
Referenced by populate().
|
inline |
Definition at line 96 of file qtextureglyphcache_p.h.
Referenced by fillInPendingGlyphs().
|
pure virtual |
Implemented in QImageTextureGlyphCache, QOpenGLTextureGlyphCache, and QSGRhiTextureGlyphCache.
|
inlinevirtual |
Reimplemented in QSGRhiTextureGlyphCache.
Definition at line 94 of file qtextureglyphcache_p.h.
Referenced by fillInPendingGlyphs().
void QTextureGlyphCache::fillInPendingGlyphs | ( | ) |
Definition at line 206 of file qtextureglyphcache.cpp.
References beginFillTexture(), createCache(), endFillTexture(), fillTexture(), hasPendingGlyphs(), isNull(), iter, m_h, m_pendingGlyphs, m_w, qMax(), qNextPowerOfTwo(), and resizeCache().
|
pure virtual |
Implemented in QImageTextureGlyphCache, QOpenGLTextureGlyphCache, and QSGRhiTextureGlyphCache.
Referenced by fillInPendingGlyphs().
|
inlinevirtual |
Reimplemented in QOpenGLTextureGlyphCache, and QSGRhiTextureGlyphCache.
Definition at line 88 of file qtextureglyphcache_p.h.
Referenced by populate().
|
inline |
Definition at line 83 of file qtextureglyphcache_p.h.
Referenced by fillInPendingGlyphs().
|
inline |
Definition at line 109 of file qtextureglyphcache_p.h.
Referenced by QOpenGLTextureGlyphCache::createTextureData(), and fillInPendingGlyphs().
|
inlinevirtual |
Reimplemented in QOpenGLTextureGlyphCache, and QSGRhiTextureGlyphCache.
Definition at line 113 of file qtextureglyphcache_p.h.
Referenced by QOpenGLTextureGlyphCache::maxTextureHeight(), and populate().
|
inlinevirtual |
Reimplemented in QOpenGLTextureGlyphCache, and QSGRhiTextureGlyphCache.
Definition at line 112 of file qtextureglyphcache_p.h.
References QT_DEFAULT_TEXTURE_GLYPH_CACHE_WIDTH.
Referenced by QOpenGLTextureGlyphCache::maxTextureWidth(), and populate().
bool QTextureGlyphCache::populate | ( | QFontEngine * | fontEngine, |
qsizetype | numGlyphs, | ||
const glyph_t * | glyphs, | ||
const QFixedPoint * | positions, | ||
QPainter::RenderHints | renderHints = QPainter::RenderHints() , |
||
bool | includeGlyphCacheScale = false |
||
) |
Definition at line 59 of file qtextureglyphcache.cpp.
References QFontEngine::alphaMapBoundingBox(), QHash< Key, T >::begin(), calculateSubPixelPositionCount(), QHash< Key, T >::contains(), QHash< Key, T >::end(), QFontEngine::Format_Mono, QFixed::fromReal(), glyphPadding(), i, QHash< Key, T >::insert(), QHash< Key, T >::isEmpty(), iter, QTransform::m11(), QTransform::m22(), m_current_fontengine, m_currentRowHeight, m_cx, m_cy, QFontEngineGlyphCache::m_format, m_pendingGlyphs, QFontEngine::m_subPixelPositionCount, QFontEngineGlyphCache::m_transform, m_w, QFontEngine::maxCharWidth(), maxTextureHeight(), maxTextureWidth(), pos, positions, qCeil(), qDebug, qMax(), qNextPowerOfTwo(), QT_DEFAULT_TEXTURE_GLYPH_CACHE_WIDTH, QFontEngine::subPixelPositionFor(), QFontEngine::supportsSubPixelPositions(), QFontEngine::supportsVerticalSubPixelPositions(), QFontEngineGlyphCache::transform(), QPainter::VerticalSubpixelPositioning, QTextureGlyphCache::Coord::x, and QFixedPoint::y.
|
inline |
Definition at line 102 of file qtextureglyphcache_p.h.
Referenced by fillInPendingGlyphs().
|
pure virtual |
Implemented in QImageTextureGlyphCache, QOpenGLTextureGlyphCache, QDirectFbTextureGlyphCache, and QSGRhiTextureGlyphCache.
QImage QTextureGlyphCache::textureMapForGlyph | ( | glyph_t | g, |
const QFixedPoint & | subPixelPosition | ||
) | const |
Definition at line 245 of file qtextureglyphcache.cpp.
References QFontEngine::alphaMapForGlyph(), QFontEngine::alphaRGBMapForGlyph(), QFontEngine::bitmapForGlyph(), QFontEngineGlyphCache::color(), QFontEngine::Format_A32, QFontEngine::Format_ARGB, m_current_fontengine, QFontEngineGlyphCache::m_format, and QFontEngineGlyphCache::m_transform.
Referenced by calculateSubPixelPositionCount(), QImageTextureGlyphCache::fillTexture(), QOpenGLTextureGlyphCache::fillTexture(), and QSGRhiTextureGlyphCache::fillTexture().
QHash<GlyphAndSubPixelPosition, Coord> QTextureGlyphCache::coords |
Definition at line 111 of file qtextureglyphcache_p.h.
|
protected |
Definition at line 120 of file qtextureglyphcache_p.h.
Referenced by calculateSubPixelPositionCount(), QImageTextureGlyphCache::fillTexture(), populate(), and textureMapForGlyph().
|
protected |
Definition at line 127 of file qtextureglyphcache_p.h.
Referenced by QOpenGLTextureGlyphCache::clear(), and populate().
|
protected |
Definition at line 125 of file qtextureglyphcache_p.h.
Referenced by QOpenGLTextureGlyphCache::clear(), and populate().
|
protected |
Definition at line 126 of file qtextureglyphcache_p.h.
Referenced by QOpenGLTextureGlyphCache::clear(), and populate().
|
protected |
Definition at line 124 of file qtextureglyphcache_p.h.
Referenced by QOpenGLTextureGlyphCache::clear(), and fillInPendingGlyphs().
|
protected |
Definition at line 121 of file qtextureglyphcache_p.h.
Referenced by fillInPendingGlyphs(), and populate().
|
protected |
Definition at line 123 of file qtextureglyphcache_p.h.
Referenced by QOpenGLTextureGlyphCache::clear(), fillInPendingGlyphs(), and populate().