src/gui/painting/qpainter.cpp
changeset 25 e24348a560a6
parent 18 2f34d5167611
child 29 b72c6db6890b
--- a/src/gui/painting/qpainter.cpp	Thu May 27 13:40:48 2010 +0300
+++ b/src/gui/painting/qpainter.cpp	Fri Jun 11 14:24:45 2010 +0300
@@ -5773,12 +5773,17 @@
         gf.glyphs = engine.shapedGlyphs(&si);
         gf.chars = engine.layoutData->string.unicode() + si.position;
         gf.num_chars = engine.length(item);
-        gf.width = si.width;
+        if (engine.forceJustification) {
+            for (int j=0; j<gf.glyphs.numGlyphs; ++j)
+                gf.width += gf.glyphs.effectiveAdvance(j);
+        } else {
+            gf.width = si.width;
+        }
         gf.logClusters = engine.logClusters(&si);
 
         drawTextItem(QPointF(x.toReal(), p.y()), gf);
 
-        x += si.width;
+        x += gf.width;
     }
 }