Improvement, but probably still needs more work

Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/8ce67e22
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/8ce67e22
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/8ce67e22

Branch: refs/heads/feature/strand-work
Commit: 8ce67e22618d74e2f5fef99a818fad78685786ad
Parents: 6bd14d2
Author: Harbs <ha...@in-tools.com>
Authored: Mon Jul 31 15:25:11 2017 +0300
Committer: Harbs <ha...@in-tools.com>
Committed: Mon Jul 31 15:25:11 2017 +0300

----------------------------------------------------------------------
 .../textLayout/elements/utils/GeometricElementUtils.as    |  7 +++++++
 .../flex/org/apache/flex/text/engine/ElementFormat.as     | 10 ++++++----
 2 files changed, 13 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8ce67e22/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/elements/utils/GeometricElementUtils.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/elements/utils/GeometricElementUtils.as
 
b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/elements/utils/GeometricElementUtils.as
index b31a6c0..225e15b 100644
--- 
a/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/elements/utils/GeometricElementUtils.as
+++ 
b/frameworks/projects/TLF/src/main/flex/org/apache/flex/textLayout/elements/utils/GeometricElementUtils.as
@@ -37,6 +37,8 @@ package org.apache.flex.textLayout.elements.utils
        import org.apache.flex.textLayout.formats.TLFTypographicCase;
        import org.apache.flex.textLayout.formats.TextLayoutFormat;
        import org.apache.flex.textLayout.utils.LocaleUtil;
+       import org.apache.flex.textLayout.elements.ITextFlow;
+       import org.apache.flex.textLayout.factory.TLFFactory;
        public class GeometricElementUtils
        {
                /** @private */
@@ -183,6 +185,11 @@ package org.apache.flex.textLayout.elements.utils
                        var fd:FontDescription = new FontDescription();
                        fd.fontStyle = computedFormat.fontStyle;
                        fd.fontName = computedFormat.fontFamily;
+                       var tf:ITextFlow = para.getTextFlow();
+                       if(tf)
+                               fd.fontLoader = 
tf.tlfFactory.textFactory.getFontLoader();
+                       else
+                               fd.fontLoader = 
TLFFactory.defaultTLFFactory.textFactory.getFontLoader();
 //                     fd.renderingMode = computedFormat.renderingMode;
 //                     fd.cffHinting = computedFormat.cffHinting;
                        

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8ce67e22/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/ElementFormat.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/ElementFormat.as
 
b/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/ElementFormat.as
index 1ef20ed..d5ab61c 100644
--- 
a/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/ElementFormat.as
+++ 
b/frameworks/projects/Text/src/main/flex/org/apache/flex/text/engine/ElementFormat.as
@@ -19,6 +19,9 @@
 package org.apache.flex.text.engine
 {
        import org.apache.flex.geom.Rectangle;
+       import org.apache.flex.debugging.assert;
+       import org.apache.flex.text.engine.IFont;
+       import org.apache.flex.text.engine.FontMetrics;
        
        public class ElementFormat
        {
@@ -82,10 +85,9 @@ package org.apache.flex.text.engine
                
                public function getFontMetrics():FontMetrics
                {
-                       var fm:FontMetrics = new FontMetrics();
-                       // just a guess for now
-                       fm.emBox = new Rectangle(0, 1.2 - fontSize, fontSize, 
1.2);
-                       return fm;
+                       assert(fontDescription != null,"fontDescription not 
assigned!");
+                       var metrics:FontMetrics = 
fontDescription.fontLoader.getFont(fontDescription.fontName,fontDescription.fontStyle).fontMetrics;
+                       return metrics.getScaledMetrics(fontSize);
                }
        }
 }
\ No newline at end of file

Reply via email to