![]() |
Qt 6.x
The Qt SDK
|
#include <qfontengine_p.h>
Classes | |
struct | FaceData |
struct | FaceId |
struct | Glyph |
class | Holder |
struct | KernPair |
struct | Properties |
Public Types | |
enum | Type { Box , Multi , Win , Mac , Freetype , QPF1 , QPF2 , Proxy , DirectWrite , TestFontEngine = 0x1000 } |
enum | GlyphFormat { Format_None , Format_Render = Format_None , Format_Mono , Format_A8 , Format_A32 , Format_ARGB } |
enum | ShaperFlag { DesignMetrics = 0x0002 , GlyphIndicesOnly = 0x0004 } |
enum | SynthesizedFlags { SynthesizedItalic = 0x1 , SynthesizedBold = 0x2 , SynthesizedStretch = 0x4 } |
enum | HintStyle { HintNone , HintLight , HintMedium , HintFull } |
enum | SubpixelAntialiasingType { Subpixel_None , Subpixel_RGB , Subpixel_BGR , Subpixel_VRGB , Subpixel_VBGR } |
Static Public Member Functions | |
static bool | scriptRequiresOpenType (QChar::Script script) |
static const uchar * | getCMap (const uchar *table, uint tableSize, bool *isSymbolFont, int *cmapSize) |
static quint32 | getTrueTypeGlyphIndex (const uchar *cmap, int cmapSize, uint unicode) |
static QByteArray | convertToPostscriptFontFamilyName (const QByteArray &fontFamily) |
Public Attributes | |
QAtomicInt | ref |
QFontDef | fontDef |
Holder | font_ |
Holder | face_ |
struct QFontEngine::FaceData | faceData |
uint | cache_cost |
uint | fsType: 16 |
bool | symbol |
bool | isSmoothlyScalable |
QList< KernPair > | kerning_pairs |
GlyphFormat | glyphFormat |
int | m_subPixelPositionCount |
Protected Member Functions | |
QFontEngine (Type type) | |
QFixed | firstLeftBearing (const QGlyphLayout &glyphs) |
QFixed | lastRightBearing (const QGlyphLayout &glyphs) |
QFixed | calculatedCapHeight () const |
virtual void | initializeHeightMetrics () const |
bool | processHheaTable () const |
bool | processOS2Table () const |
Protected Attributes | |
QFixed | m_ascent |
QFixed | m_descent |
QFixed | m_leading |
bool | m_heightMetricsQueried |
Definition at line 51 of file qfontengine_p.h.
Enumerator | |
---|---|
Format_None | |
Format_Render | |
Format_Mono | |
Format_A8 | |
Format_A32 | |
Format_ARGB |
Definition at line 75 of file qfontengine_p.h.
Enumerator | |
---|---|
HintNone | |
HintLight | |
HintMedium | |
HintFull |
Definition at line 249 of file qfontengine_p.h.
Enumerator | |
---|---|
DesignMetrics | |
GlyphIndicesOnly |
Definition at line 84 of file qfontengine_p.h.
Enumerator | |
---|---|
Subpixel_None | |
Subpixel_RGB | |
Subpixel_BGR | |
Subpixel_VRGB | |
Subpixel_VBGR |
Definition at line 257 of file qfontengine_p.h.
Enumerator | |
---|---|
SynthesizedItalic | |
SynthesizedBold | |
SynthesizedStretch |
Definition at line 137 of file qfontengine_p.h.
enum QFontEngine::Type |
Enumerator | |
---|---|
Box | |
Multi | |
Win | |
Mac | |
Freetype | |
QPF1 | |
QPF2 | |
Proxy | |
DirectWrite | |
TestFontEngine |
Definition at line 54 of file qfontengine_p.h.
|
virtual |
Definition at line 125 of file qfontengine.cpp.
References QList< T >::removeOne().
|
explicitprotected |
Definition at line 100 of file qfontengine.cpp.
References QList< T >::append(), cache_cost, faceData, Format_None, fsType, QFontEngine::FaceData::get_font_table, glyphFormat, isSmoothlyScalable, m_subPixelPositionCount, qt_get_font_table_default(), symbol, and QFontEngine::FaceData::user_data.
void QFontEngine::addBitmapFontToPath | ( | qreal | x, |
qreal | y, | ||
const QGlyphLayout & | glyphs, | ||
QPainterPath * | path, | ||
QTextItem::RenderFlags | flags | ||
) |
Definition at line 716 of file qfontengine.cpp.
References QGlyphLayout::advances, alphaMapForGlyph(), QImage::bits(), boundingBox(), QImage::bytesPerLine(), QImage::depth(), QImage::Format_Mono, QFixed::fromReal(), QGlyphLayout::glyphs, QImage::height(), i, imageData, QGlyphLayout::numGlyphs, QGlyphLayout::offsets, Q_UNUSED, qt_addBitmapToPath(), and QImage::width().
Referenced by addGlyphsToPath(), and QWindowsFontEngine::addOutlineToPath().
|
virtual |
Reimplemented in QFontEngineFT, QWindowsFontEngine, QWindowsFontEngineDirectWrite, and QCoreTextFontEngine.
Definition at line 765 of file qfontengine.cpp.
References addBitmapFontToPath(), QFixed::fromReal(), i, maxCharWidth(), and positions.
Referenced by addOutlineToPath(), alphaMapForGlyph(), QTextureGlyphCache::calculateSubPixelPositionCount(), QPaintEngineEx::drawStaticTextItem(), getUnscaledGlyph(), QRawFont::pathForGlyph(), and QDistanceField::setGlyph().
|
virtual |
Reimplemented in QFontEngineFT, QFontEngineBox, QWindowsFontEngine, and QFontEngineMulti.
Definition at line 609 of file qfontengine.cpp.
References addGlyphsToPath(), QVarLengthArray< T, Prealloc >::data(), QTransform::fromTranslate(), getGlyphPositions(), QGlyphLayout::numGlyphs, positions, and QVLABaseBase::size().
Referenced by QFontEngineFT::addOutlineToPath(), QWindowsFontEngine::addOutlineToPath(), QPainterPath::addText(), and QPaintEngine::drawTextItem().
|
inlinevirtual |
Reimplemented in QCoreTextFontEngine, QWindowsFontEngine, QWindowsFontEngineDirectWrite, and QFontEngineFT.
Definition at line 185 of file qfontengine_p.h.
Referenced by QCoreTextFontEngine::alphaMapBoundingBox(), and QTextureGlyphCache::populate().
|
virtual |
Reimplemented in QFontEngineMulti, QWindowsFontEngineDirectWrite, QFontEngineFT, and QCoreTextFontEngine.
Definition at line 782 of file qfontengine.cpp.
References alphaMapForGlyph().
Create a qimage with the alpha values for the glyph. Returns an image indexed_8 with index values ranging from 0=fully transparent to 255=opaque
Reimplemented in QFontEngineFT, QWindowsFontEngine, QFontEngineBox, and QFontEngineMulti.
Definition at line 863 of file qfontengine.cpp.
References addGlyphsToPath(), QPainter::Antialiasing, Qt::black, boundingBox(), QImage::constScanLine(), QImage::fill(), QImage::Format_Alpha8, QImage::Format_ARGB32_Premultiplied, QImage::height(), glyph_metrics_t::height, Qt::NoPen, qAlpha(), qCeil(), qFloor(), QImage::scanLine(), QFixed::toReal(), Qt::transparent, QImage::width(), glyph_metrics_t::width, Qt::WindingFill, QFixedPoint::x, glyph_metrics_t::x, QFixedPoint::y, and glyph_metrics_t::y.
Referenced by addBitmapFontToPath(), alphaMapForGlyph(), QCoreTextFontEngine::alphaMapForGlyph(), alphaMapForGlyph(), alphaMapForGlyph(), QRawFont::alphaMapForGlyph(), alphaRGBMapForGlyph(), qt_fontHasNarrowOutlines(), and QTextureGlyphCache::textureMapForGlyph().
|
virtual |
Reimplemented in QCoreTextFontEngine, QFontEngineFT, QWindowsFontEngineDirectWrite, and QFontEngineMulti.
Definition at line 798 of file qfontengine.cpp.
References alphaMapForGlyph(), QImage::Format_Alpha8, i, Q_ASSERT, supportsHorizontalSubPixelPositions(), supportsVerticalSubPixelPositions(), and QTransform::TxTranslate.
|
virtual |
Reimplemented in QFontEngineMulti, and QWindowsFontEngine.
Definition at line 788 of file qfontengine.cpp.
References alphaMapForGlyph(), QImage::Format_Alpha8, i, Q_ASSERT, and QTransform::TxTranslate.
|
virtual |
Reimplemented in QWindowsFontEngine, QWindowsFontEngineDirectWrite, QCoreTextFontEngine, QFontEngineFT, and QFontEngineMulti.
Definition at line 811 of file qfontengine.cpp.
References alphaMapForGlyph(), QImage::constScanLine(), QImage::Format_RGB32, QImage::height(), qRgb(), QImage::scanLine(), and QImage::width().
Referenced by QRawFont::alphaMapForGlyph(), QCoreTextFontEngine::alphaRGBMapForGlyph(), QFontEngineFT::alphaRGBMapForGlyph(), and QTextureGlyphCache::textureMapForGlyph().
|
virtual |
Reimplemented in QFontEngineBox, and QFontEngineMulti.
Definition at line 474 of file qfontengine.cpp.
References initializeHeightMetrics(), m_ascent, and m_heightMetricsQueried.
Referenced by _hb_qt_get_font_h_extents(), QPainterPath::addText(), QRawFont::ascent(), boundingBox(), QFontEngineFT::boundingBox(), QWindowsFontEngineDirectWrite::boundingBox(), QPaintEnginePrivate::drawBoxTextItem(), QPaintEngine::drawTextItem(), drawTextItemDecoration(), processHheaTable(), properties(), QFontMetrics::xHeight(), and QFontMetricsF::xHeight().
|
virtual |
Reimplemented in QCoreTextFontEngine, QFontEngineFT, QFontEngineMulti, and QWindowsFontEngine.
Definition at line 238 of file qfontengine.cpp.
References boundingBox(), glyphIndex(), and glyph_metrics_t::xoff.
Referenced by QRawFont::averageCharWidth(), QFontEngineFT::averageCharWidth(), and QCoreTextFontEngine::init().
|
virtual |
Reimplemented in QCoreTextFontEngine, QFontEngineFT, and QWindowsFontEngineDirectWrite.
Definition at line 828 of file qfontengine.cpp.
References Q_UNUSED.
Referenced by QRawFont::alphaMapForGlyph(), QCoreTextFontEngine::bitmapForGlyph(), QPaintEngine::drawTextItem(), and QTextureGlyphCache::textureMapForGlyph().
|
virtual |
Reimplemented in QFontEngineFT, QFontEngineBox, QFontEngineMulti, and QWindowsFontEngineDirectWrite.
Definition at line 572 of file qfontengine.cpp.
References ascent(), descent(), QGlyphLayout::effectiveAdvance(), firstLeftBearing(), i, lastRightBearing(), and QGlyphLayout::numGlyphs.
Referenced by _hb_qt_font_get_glyph_extents(), addBitmapFontToPath(), alphaMapForGlyph(), averageCharWidth(), boundingBox(), QRawFont::boundingRect(), calculatedCapHeight(), firstLeftBearing(), getGlyphBearings(), getUnscaledGlyph(), lastRightBearing(), minRightBearing(), qt_draw_decoration_for_glyphs(), tightBoundingBox(), visibleGlyphRange(), and xHeight().
|
pure virtual |
Implemented in QWindowsFontEngine, QWindowsFontEngineDirectWrite, QCoreTextFontEngine, QFontEngineFT, QFontEngineBox, and QFontEngineMulti.
|
virtual |
Reimplemented in QWindowsFontEngine, and QFontEngineFT.
Definition at line 214 of file qfontengine.cpp.
References boundingBox(), and QTransform::TxTranslate.
|
protected |
Definition at line 224 of file qfontengine.cpp.
References boundingBox(), glyphIndex(), and glyph_metrics_t::height.
Referenced by QCoreTextFontEngine::capHeight(), QFontEngineFT::capHeight(), QWindowsFontEngine::capHeight(), and QWindowsFontEngineDirectWrite::capHeight().
|
virtual |
Reimplemented in QCoreTextFontEngine, QFontEngineBox, and QFontEngineMulti.
Definition at line 203 of file qfontengine.cpp.
References glyphIndex(), it, and str.
|
inline |
Definition at line 213 of file qfontengine_p.h.
Referenced by QRawFont::supportsCharacter().
|
pure virtual |
Implemented in QCoreTextFontEngine, QFontEngineFT, QFontEngineBox, QFontEngineMulti, QWindowsFontEngine, and QWindowsFontEngineDirectWrite.
Referenced by QRawFont::capHeight().
Definition at line 961 of file qfontengine.cpp.
References context, and QHash< Key, T >::remove().
|
inlinevirtual |
Reimplemented in QCoreTextRawFontEngine, QCoreTextFontEngine, QFontEngineFT, QFontEngineBox, QWindowsFontEngine, and QWindowsFontEngineDirectWrite.
Definition at line 221 of file qfontengine_p.h.
Referenced by QTextEngine::fontEngine(), qt_fontHasNarrowOutlines(), and QRawFont::setPixelSize().
|
static |
Definition at line 1446 of file qfontengine.cpp.
References QByteArray::replace().
Referenced by properties(), QFontEngineFT::properties(), and QWindowsFontEngine::properties().
|
virtual |
Reimplemented in QFontEngineBox, and QFontEngineMulti.
Definition at line 482 of file qfontengine.cpp.
References initializeHeightMetrics(), m_descent, and m_heightMetricsQueried.
Referenced by _hb_qt_get_font_h_extents(), boundingBox(), QFontEngineFT::boundingBox(), QWindowsFontEngineDirectWrite::boundingBox(), QRawFont::descent(), drawTextItemDecoration(), processHheaTable(), and properties().
|
virtual |
Reimplemented in QFontEngineFT, QFontEngineMulti, and QCoreTextFontEngine.
Definition at line 1027 of file qfontengine.cpp.
References QGlyphLayout::advances, DesignMetrics, QGlyphLayout::glyphs, i, kerning(), kerning_pairs, QGlyphLayout::numGlyphs, and qRound().
Referenced by _hb_qt_font_get_glyph_h_kerning(), QRawFont::advancesForGlyphIndexes(), QFontEngineFT::doKerning(), and QCoreTextFontEngine::doKerning().
|
inlinevirtual |
Reimplemented in QCoreTextFontEngine, QFontEngineFT, QWindowsFontEngine, and QWindowsFontEngineDirectWrite.
Definition at line 155 of file qfontengine_p.h.
Referenced by _hb_qt_face_create(), QWindowsFontEngineDirectWrite::emSquareSize(), minRightBearing(), processHheaTable(), processOS2Table(), and QRawFont::unitsPerEm().
|
virtual |
Reimplemented in QCoreTextFontEngine, and QFontEngineFT.
Definition at line 250 of file qfontengine.cpp.
Referenced by QRasterPaintEngine::drawCachedGlyphs().
|
inlinevirtual |
Reimplemented in QCoreTextFontEngine, QFontEngineFT, QWindowsFontEngine, and QWindowsFontEngineDirectWrite.
Definition at line 136 of file qfontengine_p.h.
Referenced by _hb_qt_face_create(), QFontEngineMulti::createMultiFontEngine(), QPdfEnginePrivate::drawTextItem(), and QSGDefaultRenderContext::fontKey().
|
protected |
Definition at line 1472 of file qfontengine.cpp.
References boundingBox(), QGlyphLayout::glyphs, i, glyph_metrics_t::isValid(), glyph_metrics_t::leftBearing(), QGlyphLayout::numGlyphs, and glyph_metrics_t::width.
Referenced by boundingBox(), and QWindowsFontEngineDirectWrite::boundingBox().
|
static |
Definition at line 1154 of file qfontengine.cpp.
References getTrueTypeGlyphIndex(), header(), Invalid, and qSafeFromBigEndian().
Referenced by QWindowsFontEngine::getCMap().
|
virtual |
Reimplemented in QFontEngineMulti, and QWindowsFontEngine.
Definition at line 373 of file qfontengine.cpp.
References boundingBox(), glyph_metrics_t::leftBearing(), glyph_metrics_t::rightBearing(), and QFixed::toReal().
Referenced by QWindowsFontEngine::getGlyphBearings().
void QFontEngine::getGlyphPositions | ( | const QGlyphLayout & | glyphs, |
const QTransform & | matrix, | ||
QTextItem::RenderFlags | flags, | ||
QVarLengthArray< glyph_t > & | glyphs_out, | ||
QVarLengthArray< QFixedPoint > & | positions | ||
) |
Definition at line 255 of file qfontengine.cpp.
References QGlyphLayout::advances, QGlyphLayout::attributes, ch, QGlyphAttributes::dontPrint, QFixed::fromFixed(), QFixed::fromReal(), glyphIndex(), QGlyphLayout::glyphs, i, QGlyphLayout::justifications, QGlyphJustification::nKashidas, QGlyphLayout::numGlyphs, QGlyphLayout::offsets, positions, Q_ASSERT, recalcAdvances(), QVarLengthArray< T, Prealloc >::resize(), QTextItem::RightToLeft, QVLABaseBase::size(), QGlyphJustification::space_18d6, QFixed::toReal(), QPointF::x(), QFixedPoint::x, QPointF::y(), and QFixedPoint::y.
Referenced by QFontEngineFT::addOutlineToPath(), QFontEngineBox::addOutlineToPath(), addOutlineToPath(), QCoreTextFontEngine::draw(), QFontEngineBox::draw(), draw_text_item_win(), QPaintEnginePrivate::drawBoxTextItem(), QPaintEngine::drawTextItem(), QRasterPaintEngine::drawTextItem(), QOpenGL2PaintEngineEx::drawTextItem(), QPdfEnginePrivate::drawTextItem(), and glyphRunWithInfo().
|
virtual |
Reimplemented in QFontEngineFT.
Definition at line 57 of file qfontengine.cpp.
References Err_Not_Covered, and Q_UNUSED.
Referenced by _hb_qt_font_get_glyph_contour_point().
QByteArray QFontEngine::getSfntTable | ( | uint | tag | ) | const |
Definition at line 949 of file qfontengine.cpp.
References getSfntTableData(), and tag.
Referenced by QWindowsFontEngine::capHeight(), QRawFont::fontTable(), QWindowsFontEngine::getCMap(), glyphCount(), QCoreTextFontEngine::init(), initializeHeightMetrics(), loadKerningPairs(), minRightBearing(), processHheaTable(), processOS2Table(), and QFontSubset::toTruetype().
Returns true
if the font table idetified by tag exists in the font; returns false
otherwise.
If buffer is \nullptr, stores the size of the buffer required for the font table data, in bytes, in length. If buffer is not \nullptr and the capacity of the buffer, passed in length, is sufficient to store the font table data, also copies the font table data to buffer.
Note: returning false
when the font table exists could lead to an undefined behavior.
Reimplemented in QFontEngineFT, QWindowsFontEngine, QWindowsFontEngineDirectWrite, and QCoreTextFontEngine.
Definition at line 941 of file qfontengine.cpp.
Referenced by getSfntTable(), qt_get_font_table_default(), and supportsScript().
|
static |
Definition at line 1311 of file qfontengine.cpp.
References glyphIndex(), i, ptr(), qDebug, and qSafeFromBigEndian().
Referenced by getCMap(), QWindowsFontEngine::getGlyphIndexes(), and QWindowsFontEngine::glyphIndex().
|
virtual |
Reimplemented in QCoreTextFontEngine, QFontEngineFT, QWindowsFontEngine, and QWindowsFontEngineDirectWrite.
Definition at line 921 of file qfontengine.cpp.
References addGlyphsToPath(), and boundingBox().
Referenced by QFontSubset::toTruetype().
QFontEngineGlyphCache * QFontEngine::glyphCache | ( | const void * | key, |
GlyphFormat | format, | ||
const QTransform & | transform, | ||
const QColor & | color = QColor() |
||
) | const |
Definition at line 987 of file qfontengine.cpp.
References cache, caches, QHash< Key, T >::cend(), QHash< Key, T >::constFind(), context, e, Format_ARGB, and qtransform_equals_no_translate().
Referenced by QDirectFbBlitter::drawCachedGlyphs(), QRasterPaintEngine::drawCachedGlyphs(), and QOpenGL2PaintEngineExPrivate::drawCachedGlyphs().
|
virtual |
Reimplemented in QFontEngineFT.
Definition at line 1135 of file qfontengine.cpp.
References QByteArray::constData(), getSfntTable(), MAKE_TAG, qSafeFromBigEndian(), and QByteArray::size().
Referenced by QSGDistanceFieldGlyphCache::QSGDistanceFieldGlyphCache(), and QSGOpenVGFontGlyphCache::QSGOpenVGFontGlyphCache().
|
virtual |
Reimplemented in QFontEngineFT.
Definition at line 855 of file qfontengine.cpp.
Referenced by QRasterPaintEngine::drawCachedGlyphs().
Implemented in QCoreTextFontEngine, QFontEngineFT, QFontEngineBox, QFontEngineMulti, QWindowsFontEngine, and QWindowsFontEngineDirectWrite.
Referenced by _hb_qt_font_get_nominal_glyph(), _hb_qt_font_get_variation_glyph(), applyVisibilityRules(), averageCharWidth(), calculatedCapHeight(), canRender(), getGlyphPositions(), QFontSubset::getReverseMap(), getTrueTypeGlyphIndex(), minRightBearing(), qt_fontHasNarrowOutlines(), set(), and xHeight().
|
inlinevirtual |
Reimplemented in QCoreTextFontEngine, and QFontEngineFT.
Definition at line 219 of file qfontengine_p.h.
Referenced by QWindowsFontEngine::alphaMapBoundingBox(), QWindowsFontEngineDirectWrite::alphaMapForGlyph(), QWindowsFontEngine::alphaRGBMapForGlyph(), QWindowsFontEngineDirectWrite::alphaRGBMapForGlyph(), QDirectFbBlitter::drawCachedGlyphs(), QRasterPaintEngine::drawCachedGlyphs(), QOpenGL2PaintEngineExPrivate::drawCachedGlyphs(), QImageTextureGlyphCache::fillTexture(), and QSGTextMaskMaterial::populate().
|
virtual |
Reimplemented in QCoreTextFontEngine, QFontEngineFT, QWindowsFontEngine, and QWindowsFontEngineDirectWrite.
Definition at line 1149 of file qfontengine.cpp.
Referenced by draw_text_item_win(), and QWin32PrintEngine::drawTextItem().
void * QFontEngine::harfbuzzFace | ( | ) | const |
Definition at line 161 of file qfontengine.cpp.
References hb_qt_face_get_for_engine(), Multi, Q_ASSERT, and type().
Referenced by QFontEngineFT::init().
void * QFontEngine::harfbuzzFont | ( | ) | const |
Definition at line 151 of file qfontengine.cpp.
References hb_qt_font_get_for_engine(), Multi, Q_ASSERT, and type().
|
inlinevirtual |
Reimplemented in QFontEngineFT.
Definition at line 183 of file qfontengine_p.h.
Referenced by QRasterPaintEngine::drawCachedGlyphs(), and QRasterPaintEngine::shouldDrawCachedGlyphs().
|
virtual |
Reimplemented in QWindowsFontEngine.
Definition at line 1466 of file qfontengine.cpp.
References Format_ARGB, and glyphFormat.
Referenced by QQuickTextNode::addGlyphs(), and QWindowsFontEngine::hasUnreliableGlyphOutline().
|
protectedvirtual |
Reimplemented in QCoreTextFontEngine, QFontEngineFT, QWindowsFontEngine, and QWindowsFontEngineDirectWrite.
Definition at line 407 of file qfontengine.cpp.
References getSfntTable(), QByteArray::isEmpty(), m_ascent, m_descent, m_heightMetricsQueried, m_leading, MAKE_TAG, processHheaTable(), processOS2Table(), QFixed::round(), and supportsSubPixelPositions().
Referenced by ascent(), descent(), QFontEngineFT::initializeHeightMetrics(), QWindowsFontEngine::initializeHeightMetrics(), QWindowsFontEngineDirectWrite::initializeHeightMetrics(), and leading().
|
protected |
Definition at line 1483 of file qfontengine.cpp.
References boundingBox(), QGlyphLayout::glyphs, glyph_metrics_t::isValid(), QGlyphLayout::numGlyphs, and glyph_metrics_t::rightBearing().
Referenced by boundingBox(), and QWindowsFontEngineDirectWrite::boundingBox().
|
virtual |
Reimplemented in QFontEngineBox, and QFontEngineMulti.
Definition at line 466 of file qfontengine.cpp.
References initializeHeightMetrics(), m_heightMetricsQueried, and m_leading.
Referenced by _hb_qt_get_font_h_extents(), QFontEngineFT::init(), QRawFont::leading(), processHheaTable(), and properties().
|
virtual |
Reimplemented in QCoreTextFontEngine, QFontEngineFT, QFontEngineMulti, QWindowsFontEngine, and QWindowsFontEngineDirectWrite.
Definition at line 133 of file qfontengine.cpp.
References fontDef, QFontDef::pixelSize, and QFontDef::weight.
Referenced by QPainterPath::addText(), QFontEngineBox::draw(), QPaintEnginePrivate::drawBoxTextItem(), QPdfEnginePrivate::drawTextItem(), drawTextItemDecoration(), QRawFont::lineThickness(), QWindowsFontEngine::lineThickness(), QWindowsFontEngineDirectWrite::lineThickness(), properties(), and underlinePosition().
Definition at line 1044 of file qfontengine.cpp.
References QByteArray::constData(), getSfntTable(), header(), i, QByteArray::isEmpty(), kerning_pairs, MAKE_TAG, qSafeFromBigEndian(), and QByteArray::size().
Referenced by QFontEngineFT::doKerning(), QCoreTextFontEngine::doKerning(), and QWindowsFontEngine::getCMap().
|
pure virtual |
Implemented in QCoreTextFontEngine, QFontEngineFT, QFontEngineBox, QFontEngineMulti, QWindowsFontEngine, and QWindowsFontEngineDirectWrite.
Referenced by addGlyphsToPath(), QRawFont::maxCharWidth(), QTextureGlyphCache::populate(), properties(), and QFontSubset::toTruetype().
|
virtual |
Reimplemented in QFontEngineBox, QFontEngineMulti, and QWindowsFontEngine.
Definition at line 490 of file qfontengine.cpp.
References kBearingNotInitialized, and minRightBearing().
Referenced by QFontSubset::toTruetype().
|
virtual |
Reimplemented in QFontEngineBox, QFontEngineMulti, and QWindowsFontEngine.
Definition at line 503 of file qfontengine.cpp.
References boundingBox(), QByteArray::constData(), emSquareSize(), QFontDef::families, fontDef, getSfntTable(), glyphIndex(), glyph_metrics_t::height, i, kBearingNotInitialized, kMinLeftSideBearingOffset, kMinRightSideBearingOffset, glyph_metrics_t::leftBearing(), MAKE_TAG, QFontDef::pixelSize, q16Dot16ToFloat, Q_ASSERT, qAbs(), qMin(), qWarning, glyph_metrics_t::rightBearing(), QByteArray::size(), QFixed::toInt(), QFixed::toReal(), and glyph_metrics_t::width.
Referenced by minLeftBearing(), and QFontSubset::toTruetype().
|
protected |
Definition at line 382 of file qfontengine.cpp.
References ascent(), QByteArray::constData(), descent(), emSquareSize(), fontDef, QFixed::fromReal(), getSfntTable(), leading(), m_ascent, m_descent, m_leading, MAKE_TAG, QFontDef::pixelSize, ptr(), and QByteArray::size().
Referenced by initializeHeightMetrics().
|
protected |
Definition at line 430 of file qfontengine.cpp.
References QByteArray::constData(), emSquareSize(), fontDef, QFixed::fromReal(), getSfntTable(), m_ascent, m_descent, m_leading, MAKE_TAG, QFontDef::pixelSize, ptr(), and QByteArray::size().
Referenced by initializeHeightMetrics().
|
virtual |
Reimplemented in QCoreTextFontEngine, QFontEngineFT, QWindowsFontEngine, and QWindowsFontEngineDirectWrite.
Definition at line 904 of file qfontengine.cpp.
References ascent(), convertToPostscriptFontFamilyName(), descent(), QFontDef::families, fontDef, leading(), lineThickness(), maxCharWidth(), QByteArray::number(), QFontDef::style, and QFontDef::weight.
Referenced by QWindowsFontEngineDirectWrite::properties(), QFontSubset::toTruetype(), and QFontSubset::widthArray().
|
inlinevirtual |
Reimplemented in QCoreTextFontEngine, QFontEngineBox, QFontEngineMulti, QFontEngineFT, QWindowsFontEngine, and QWindowsFontEngineDirectWrite.
Definition at line 160 of file qfontengine_p.h.
Referenced by _hb_qt_font_get_glyph_h_advance(), QRawFont::advancesForGlyphIndexes(), applyVisibilityRules(), getGlyphPositions(), and set().
Reimplemented in QFontEngineFT.
Definition at line 900 of file qfontengine.cpp.
|
inlinestatic |
Definition at line 229 of file qfontengine_p.h.
References QChar::Script_Khmer, QChar::Script_Nko, QChar::Script_Sinhala, and QChar::Script_Syriac.
Referenced by supportsScript().
Reimplemented in QFontEngineFT.
Definition at line 255 of file qfontengine_p.h.
void QFontEngine::setGlyphCache | ( | const void * | key, |
QFontEngineGlyphCache * | data | ||
) |
Definition at line 966 of file qfontengine.cpp.
References cache, caches, context, e, and Q_ASSERT.
Referenced by QDirectFbBlitter::drawCachedGlyphs(), QRasterPaintEngine::drawCachedGlyphs(), and QOpenGL2PaintEngineExPrivate::drawCachedGlyphs().
|
pure virtual |
Implemented in QCoreTextFontEngine, QFontEngineFT, QFontEngineBox, QFontEngineMulti, QWindowsFontEngine, and QWindowsFontEngineDirectWrite.
Referenced by QRawFont::glyphIndexesForChars(), and QRawFont::glyphIndexesForString().
|
virtual |
Definition at line 835 of file qfontengine.cpp.
References QFixed::fromFixed(), m_subPixelPositionCount, position(), supportsHorizontalSubPixelPositions(), and supportsVerticalSubPixelPositions().
Referenced by QRasterPaintEngine::drawCachedGlyphs(), QOpenGL2PaintEngineExPrivate::drawCachedGlyphs(), and QTextureGlyphCache::populate().
Definition at line 150 of file qfontengine_p.h.
Referenced by QDirectFbBlitter::drawCachedGlyphs(), and QSGTextMaskMaterial::populate().
|
inlinevirtual |
Reimplemented in QCoreTextFontEngine, QFontEngineFT, and QWindowsFontEngineDirectWrite.
Definition at line 147 of file qfontengine_p.h.
Referenced by alphaMapForGlyph(), QSGTextMaskMaterial::populate(), and subPixelPositionFor().
bool QFontEngine::supportsScript | ( | QChar::Script | script | ) | const |
Definition at line 171 of file qfontengine.cpp.
References getSfntTableData(), hb_qt_face_get_for_engine(), hb_qt_script_to_script(), MAKE_TAG, Multi, scriptRequiresOpenType(), and type().
|
inline |
Definition at line 143 of file qfontengine_p.h.
Referenced by QOpenGL2PaintEngineExPrivate::drawCachedGlyphs(), initializeHeightMetrics(), and QTextureGlyphCache::populate().
|
virtual |
Reimplemented in QCoreTextFontEngine, QFontEngineFT, and QWindowsFontEngine.
Definition at line 245 of file qfontengine.cpp.
References QTransform::TxProject.
Referenced by draw_text_item_win(), QOpenGL2PaintEngineExPrivate::drawCachedGlyphs(), QPainter::drawStaticText(), QRasterPaintEngine::drawTextItem(), QOpenGL2PaintEngineEx::shouldDrawCachedGlyphs(), and QRasterPaintEngine::shouldDrawCachedGlyphs().
|
inlinevirtual |
Reimplemented in QCoreTextFontEngine, and QFontEngineFT.
Definition at line 148 of file qfontengine_p.h.
Referenced by alphaMapForGlyph(), QRasterPaintEngine::drawCachedGlyphs(), QOpenGL2PaintEngineExPrivate::drawCachedGlyphs(), QTextureGlyphCache::populate(), and subPixelPositionFor().
|
inlinevirtual |
Reimplemented in QCoreTextFontEngine, QFontEngineFT, and QWindowsFontEngine.
Definition at line 142 of file qfontengine_p.h.
Referenced by QPdfEnginePrivate::drawTextItem().
glyph_metrics_t QFontEngine::tightBoundingBox | ( | const QGlyphLayout & | glyphs | ) |
Definition at line 582 of file qfontengine.cpp.
References QGlyphLayout::advances, QGlyphLayout::attributes, boundingBox(), QFixed::ceil(), QGlyphAttributes::dontPrint, QGlyphLayout::effectiveAdvance(), QGlyphLayout::glyphs, glyph_metrics_t::height, i, QGlyphLayout::numGlyphs, QGlyphLayout::offsets, qMax(), qMin(), glyph_metrics_t::width, QFixedPoint::x, glyph_metrics_t::x, glyph_metrics_t::xoff, QFixedPoint::y, glyph_metrics_t::y, and glyph_metrics_t::yoff.
|
inline |
Definition at line 108 of file qfontengine_p.h.
Referenced by draw_text_item_win(), QPainter::drawStaticText(), QPainterPrivate::drawTextItem(), QPdfEngine::drawTextItem(), QX11PaintEngine::drawTextItem(), QWin32PrintEngine::drawTextItem(), QCoreGraphicsPaintEngine::drawTextItem(), QWindowsFontDatabase::fontEngine(), QRawFont::fromFont(), QTextLine::glyphRuns(), harfbuzzFace(), harfbuzzFont(), hb_qt_face_get_for_engine(), hb_qt_font_get_for_engine(), QFontDatabasePrivate::load(), and supportsScript().
|
virtual |
Reimplemented in QCoreTextFontEngine, QFontEngineFT, QFontEngineMulti, and QWindowsFontEngineDirectWrite.
Definition at line 146 of file qfontengine.cpp.
References lineThickness().
Referenced by QPainterPath::addText(), drawTextItemDecoration(), QRawFont::underlinePosition(), and QWindowsFontEngineDirectWrite::underlinePosition().
|
virtual |
Reimplemented in QCoreTextFontEngine, QFontEngineFT, QFontEngineMulti, QWindowsFontEngine, and QWindowsFontEngineDirectWrite.
Definition at line 231 of file qfontengine.cpp.
References boundingBox(), glyphIndex(), and glyph_metrics_t::height.
Referenced by QRawFont::xHeight(), QFontEngineFT::xHeight(), and QWindowsFontEngine::xHeight().
uint QFontEngine::cache_cost |
Definition at line 313 of file qfontengine_p.h.
Referenced by QFontEngine(), QFontEngineBox::QFontEngineBox(), QFontEngineBox::QFontEngineBox(), QFontEngineFT::QFontEngineFT(), QFontEngineMulti::QFontEngineMulti(), QWindowsFontEngine::QWindowsFontEngine(), QWindowsFontEngineDirectWrite::QWindowsFontEngineDirectWrite(), and QCoreTextFontEngine::init().
|
mutable |
Definition at line 306 of file qfontengine_p.h.
Referenced by hb_qt_face_get_for_engine(), and QFontEngineFT::init().
struct QFontEngine::FaceData QFontEngine::faceData |
Referenced by QFontEngine(), _hb_qt_face_create(), and QFontEngineFT::init().
|
mutable |
Definition at line 305 of file qfontengine_p.h.
Referenced by hb_qt_font_get_for_engine().
QFontDef QFontEngine::fontDef |
Definition at line 270 of file qfontengine_p.h.
Referenced by QCoreTextFontEngine::QCoreTextFontEngine(), QCoreTextFontEngine::QCoreTextFontEngine(), QFontEngineFT::QFontEngineFT(), QFontEngineMulti::QFontEngineMulti(), QWindowsFontEngine::QWindowsFontEngine(), QWindowsFontEngineDirectWrite::QWindowsFontEngineDirectWrite(), _hb_qt_font_create(), QWindowsFontEngine::addGlyphsToPath(), QWindowsFontEngineDirectWrite::addGlyphsToPath(), QCoreTextFontEngine::addGlyphsToPath(), QCoreTextFontEngine::alphaMapBoundingBox(), QCoreTextRawFontEngine::cloneWithSize(), QCoreTextFontEngine::cloneWithSize(), QFontEngineFT::cloneWithSize(), QWindowsFontEngine::cloneWithSize(), QWindowsFontEngineDirectWrite::cloneWithSize(), QFontEngineFT::create(), QFontEngineFT::create(), QWindowsFontEngineDirectWrite::createHFONT(), QFontEngineMulti::createMultiFontEngine(), QCoreTextFontEngine::draw(), QPaintEngineEx::drawStaticTextItem(), QWindowsDirect2DPaintEngine::drawStaticTextItem(), QPdfEnginePrivate::drawTextItem(), QCoreGraphicsPaintEngine::drawTextItem(), QFontEngineMulti::ensureEngineAt(), QFontEngineMulti::ensureFallbackFamiliesQueried(), QRawFont::familyName(), QWindowsFontDatabase::fontEngine(), QWindowsFontDatabaseBase::fontEngine(), QWindowsDirect2DPaintEnginePrivate::fontFaceFromFontEngine(), QRawFont::fromFont(), QWindowsFontEngine::getCMap(), QCoreTextFontEngine::imageForGlyph(), QCoreTextFontEngine::init(), QFontEngineFT::init(), QWindowsFontEngine::initFontInfo(), QWindowsFontEngineDirectWrite::initFontInfo(), lineThickness(), QFontDatabasePrivate::load(), QCoreTextFontEngine::loadAdvancesForGlyphs(), QFontEngineMulti::loadEngine(), QFontEngineFT::loadGlyphSet(), minRightBearing(), QRawFont::pixelSize(), processHheaTable(), processOS2Table(), properties(), QFontEngineFT::properties(), QWindowsFontEngineDirectWrite::recalcAdvances(), QFontEngineMulti::setFallbackFamiliesList(), QRawFont::setPixelSize(), QCoreTextFontEngine::shouldAntialias(), QPaintEngineEx::shouldDrawCachedGlyphs(), QCoreTextFontEngine::shouldSmoothFont(), QRawFont::style(), QRawFont::styleName(), QFontEngineFT::synthesized(), QWindowsFontEngine::synthesized(), QFontSubset::toTruetype(), QWindowsFontDatabaseBase::EmbeddedFont::updateFromOS2Table(), and QRawFont::weight().
uint QFontEngine::fsType |
Definition at line 314 of file qfontengine_p.h.
Referenced by QFontEngine(), QPdfEnginePrivate::drawTextItem(), QWindowsFontEngine::getCMap(), QCoreTextFontEngine::init(), and QFontEngineFT::init().
GlyphFormat QFontEngine::glyphFormat |
Definition at line 329 of file qfontengine_p.h.
Referenced by QFontEngine(), QRawFont::alphaMapForGlyph(), QWindowsFontDatabase::createEngine(), QRasterPaintEngine::drawCachedGlyphs(), QBlitterPaintEngine::drawCachedGlyphs(), QOpenGL2PaintEngineEx::drawStaticTextItem(), QPaintEngine::drawTextItem(), QOpenGL2PaintEngineEx::drawTextItem(), QCoreTextFontEngine::hasColorGlyphs(), hasUnreliableGlyphOutline(), QCoreTextFontEngine::imageForGlyph(), QCoreTextFontEngine::init(), QFontEngineFT::init(), and QPaintEngineEx::shouldDrawCachedGlyphs().
bool QFontEngine::isSmoothlyScalable |
Definition at line 316 of file qfontengine_p.h.
Referenced by QFontEngine(), and QQuickTextNode::addGlyphs().
Definition at line 326 of file qfontengine_p.h.
Referenced by doKerning(), and loadKerningPairs().
|
mutableprotected |
Definition at line 340 of file qfontengine_p.h.
Referenced by QWindowsFontEngineDirectWrite::QWindowsFontEngineDirectWrite(), ascent(), initializeHeightMetrics(), QCoreTextFontEngine::initializeHeightMetrics(), QFontEngineFT::initializeHeightMetrics(), QWindowsFontEngine::initializeHeightMetrics(), QWindowsFontEngineDirectWrite::initializeHeightMetrics(), processHheaTable(), and processOS2Table().
|
mutableprotected |
Definition at line 341 of file qfontengine_p.h.
Referenced by QWindowsFontEngineDirectWrite::QWindowsFontEngineDirectWrite(), descent(), initializeHeightMetrics(), QCoreTextFontEngine::initializeHeightMetrics(), QFontEngineFT::initializeHeightMetrics(), QWindowsFontEngine::initializeHeightMetrics(), QWindowsFontEngineDirectWrite::initializeHeightMetrics(), processHheaTable(), and processOS2Table().
|
mutableprotected |
Definition at line 343 of file qfontengine_p.h.
Referenced by ascent(), descent(), initializeHeightMetrics(), QCoreTextFontEngine::initializeHeightMetrics(), and leading().
|
mutableprotected |
Definition at line 342 of file qfontengine_p.h.
Referenced by initializeHeightMetrics(), QCoreTextFontEngine::initializeHeightMetrics(), QFontEngineFT::initializeHeightMetrics(), QWindowsFontEngine::initializeHeightMetrics(), QWindowsFontEngineDirectWrite::initializeHeightMetrics(), leading(), processHheaTable(), and processOS2Table().
int QFontEngine::m_subPixelPositionCount |
Definition at line 330 of file qfontengine_p.h.
Referenced by QFontEngine(), QFontEngineFT::QFontEngineFT(), QTextureGlyphCache::populate(), and subPixelPositionFor().
QAtomicInt QFontEngine::ref |
Definition at line 269 of file qfontengine_p.h.
Referenced by QFontSubset::QFontSubset(), QFontEngineMulti::~QFontEngineMulti(), QFontSubset::~QFontSubset(), QWindowsFontDatabase::fontEngine(), QTextEngine::fontEngine(), QFontDatabasePrivate::load(), qt_fontHasNarrowOutlines(), and releaseCachedFontEngine().
bool QFontEngine::symbol |
Definition at line 315 of file qfontengine_p.h.
Referenced by QFontEngine(), applyVisibilityRules(), QWindowsFontEngine::getCMap(), QWindowsFontEngine::getGlyphIndexes(), QFontEngineFT::glyphIndex(), QWindowsFontEngine::glyphIndex(), QFontEngineFT::init(), QFontDatabasePrivate::load(), and QFontEngineFT::stringToCMap().