diff options
author | Jiang Jiang <jiang.jiang@nokia.com> | 2011-03-23 17:35:47 (GMT) |
---|---|---|
committer | Jiang Jiang <jiang.jiang@nokia.com> | 2011-03-24 14:56:56 (GMT) |
commit | 47ce3672058d4cc6ca479f8b40d6cb821c38dd51 (patch) | |
tree | abb1c34a72e5f1cdc0206f87b23ac38c8fe85321 /src/gui/painting/qpaintengine_x11.cpp | |
parent | dcdc7eccf7ff32396816059dc932c358f73cf12b (diff) | |
download | Qt-47ce3672058d4cc6ca479f8b40d6cb821c38dd51.zip Qt-47ce3672058d4cc6ca479f8b40d6cb821c38dd51.tar.gz Qt-47ce3672058d4cc6ca479f8b40d6cb821c38dd51.tar.bz2 |
Fixed remaining issues in subpixel positioning with FreeType
1. Merge QStaticText and QGlyphs drawing code of raster engine
into glyph drawing code for normal QTextItem, it simplify
the caching system (we don't use QImageTextureGlyphCache for
raster anymore, just glyph set cache in FreeType engine is
enough), and fix some regressions in QStaticText and QGlyphs
drawing.
2. Fix subpixel positioning support for OpenGL texture glyph
cache. Including a transform handling regression introduced
by the initial patch.
3. Disable subpixel positioning for bitmap fonts (mono format).
After this change, we only have two code paths for glyph rendering
with FreeType: raster will always use the simple code path (with
QFontEngine_FT cache) while GL will always use QTextureGlyphCache.
Reviewed-by: Eskil
Diffstat (limited to 'src/gui/painting/qpaintengine_x11.cpp')
-rw-r--r-- | src/gui/painting/qpaintengine_x11.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gui/painting/qpaintengine_x11.cpp b/src/gui/painting/qpaintengine_x11.cpp index 16ef09b..94828fb 100644 --- a/src/gui/painting/qpaintengine_x11.cpp +++ b/src/gui/painting/qpaintengine_x11.cpp @@ -2385,7 +2385,7 @@ void QX11PaintEngine::drawFreetype(const QPointF &p, const QTextItemInt &ti) set = ft->loadTransformedGlyphSet(d->matrix); if (!set || set->outline_drawing - || !ft->loadGlyphs(set, glyphs.data(), glyphs.size(), positions, QFontEngineFT::Format_Render)) + || !ft->loadGlyphs(set, glyphs.constData(), glyphs.size(), positions.constData(), QFontEngineFT::Format_Render)) { QPaintEngine::drawTextItem(p, ti); return; |