[SCM] WebKit Debian packaging branch, webkit-1.3, updated. upstream/1.3.7-4207-g178b198

zimmermann at webkit.org zimmermann at webkit.org
Sun Feb 20 23:48:15 UTC 2011


The following commit has been merged in the webkit-1.3 branch:
commit 95ccc61b19fb38ff6462d75aa14e64a01cb6f5cc
Author: zimmermann at webkit.org <zimmermann at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Tue Jan 25 12:47:00 2011 +0000

    2011-01-25  Nikolas Zimmermann  <nzimmermann at rim.com>
    
            Reviewed by Dirk Schulze.
    
            Introduce FontMetrics abstraction
            https://bugs.webkit.org/show_bug.cgi?id=51456
    
            Use accurate floating-point metrics for SVG Font calculations instead of casting float -> integer.
            This hopefully fixes differences between 32/64 bit bots.
    
            Needs new layout test results for several platforms, which need to be taken from the bots landing afterwards.
    
            * platform/graphics/SimpleFontData.cpp:
            (WebCore::SimpleFontData::SimpleFontData):
            (WebCore::SimpleFontData::initCharWidths):
    
    2011-01-25  Nikolas Zimmermann  <nzimmermann at rim.com>
    
            Reviewed by Dirk Schulze.
    
            Introduce FontMetrics abstraction
            https://bugs.webkit.org/show_bug.cgi?id=51456
    
            Update mac/mac-leopard pixel baseline after removing the float -> int truncation in the SVG Fonts ascent/descent calculation code.
    
            * platform/gtk/Skipped: Unskip several tests.
            * platform/mac-leopard/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.checksum:
            * platform/mac-leopard/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png:
            * platform/mac-leopard/svg/batik/text/textEffect-expected.checksum:
            * platform/mac-leopard/svg/batik/text/textEffect-expected.png:
            * platform/mac-leopard/svg/batik/text/textEffect3-expected.checksum:
            * platform/mac-leopard/svg/batik/text/textEffect3-expected.png:
            * platform/mac-leopard/svg/custom/svg-fonts-in-html-expected.checksum:
            * platform/mac-leopard/svg/custom/svg-fonts-in-html-expected.png:
            * platform/mac-leopard/svg/custom/svg-fonts-with-no-element-reference-expected.checksum:
            * platform/mac-leopard/svg/custom/svg-fonts-with-no-element-reference-expected.png:
            * platform/mac-leopard/svg/custom/svg-fonts-without-missing-glyph-expected.checksum:
            * platform/mac-leopard/svg/custom/svg-fonts-without-missing-glyph-expected.png:
            * platform/mac-leopard/svg/text/text-text-05-t-expected.checksum:
            * platform/mac-leopard/svg/text/text-text-05-t-expected.png:
            * platform/mac-leopard/svg/text/text-text-06-t-expected.checksum:
            * platform/mac-leopard/svg/text/text-text-06-t-expected.png:
            * platform/mac/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt:
            * platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.txt:
            * platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.txt:
            * platform/mac/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt:
            * platform/mac/svg/W3C-SVG-1.1/animate-elem-24-t-expected.png:
            * platform/mac/svg/W3C-SVG-1.1/animate-elem-24-t-expected.txt:
            * platform/mac/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.png:
            * platform/mac/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.txt:
            * platform/mac/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.txt:
            * platform/mac/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt:
            * platform/mac/svg/W3C-SVG-1.1/text-text-05-t-expected.txt:
            * platform/mac/svg/W3C-SVG-1.1/text-text-06-t-expected.txt:
            * platform/mac/svg/batik/text/textEffect-expected.txt:
            * platform/mac/svg/batik/text/textEffect3-expected.txt:
            * platform/mac/svg/batik/text/textPosition2-expected.png:
            * platform/mac/svg/batik/text/textPosition2-expected.txt:
            * platform/mac/svg/custom/svg-fonts-in-html-expected.txt:
            * platform/mac/svg/custom/svg-fonts-with-no-element-reference-expected.txt:
            * platform/mac/svg/custom/svg-fonts-without-missing-glyph-expected.txt:
            * platform/mac/svg/text/text-text-05-t-expected.txt:
            * platform/mac/svg/text/text-text-06-t-expected.txt:
            * svg/custom/glyph-transformation-with-hkern-expected.txt:
    -This line, and those below, will be ignored--
    
    M    LayoutTests/platform/mac-leopard/svg/text/text-text-05-t-expected.checksum
    M    LayoutTests/platform/mac-leopard/svg/text/text-text-06-t-expected.checksum
    M    LayoutTests/platform/mac-leopard/svg/text/text-text-05-t-expected.png
    M    LayoutTests/platform/mac-leopard/svg/text/text-text-06-t-expected.png
    M    LayoutTests/platform/mac-leopard/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png
    M    LayoutTests/platform/mac-leopard/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.checksum
    M    LayoutTests/platform/mac-leopard/svg/batik/text/textEffect3-expected.checksum
    M    LayoutTests/platform/mac-leopard/svg/batik/text/textEffect-expected.checksum
    M    LayoutTests/platform/mac-leopard/svg/batik/text/textEffect-expected.png
    M    LayoutTests/platform/mac-leopard/svg/batik/text/textEffect3-expected.png
    M    LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-without-missing-glyph-expected.png
    M    LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-with-no-element-reference-expected.checksum
    M    LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-in-html-expected.checksum
    M    LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-without-missing-glyph-expected.checksum
    M    LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-with-no-element-reference-expected.png
    M    LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-in-html-expected.png
    M    LayoutTests/platform/mac/svg/text/text-text-06-t-expected.txt
    M    LayoutTests/platform/mac/svg/text/text-text-05-t-expected.txt
    M    LayoutTests/platform/mac/svg/W3C-SVG-1.1/text-text-05-t-expected.txt
    M    LayoutTests/platform/mac/svg/W3C-SVG-1.1/animate-elem-24-t-expected.txt
    M    LayoutTests/platform/mac/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.txt
    M    LayoutTests/platform/mac/svg/W3C-SVG-1.1/text-text-06-t-expected.txt
    M    LayoutTests/platform/mac/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt
    M    LayoutTests/platform/mac/svg/W3C-SVG-1.1/animate-elem-24-t-expected.png
    M    LayoutTests/platform/mac/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.txt
    M    LayoutTests/platform/mac/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.png
    M    LayoutTests/platform/mac/svg/batik/text/textEffect3-expected.txt
    M    LayoutTests/platform/mac/svg/batik/text/textPosition2-expected.png
    M    LayoutTests/platform/mac/svg/batik/text/textEffect-expected.txt
    M    LayoutTests/platform/mac/svg/batik/text/textPosition2-expected.txt
    M    LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.txt
    M    LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt
    M    LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.txt
    M    LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt
    M    LayoutTests/platform/mac/svg/custom/svg-fonts-in-html-expected.txt
    M    LayoutTests/platform/mac/svg/custom/svg-fonts-with-no-element-reference-expected.txt
    M    LayoutTests/platform/mac/svg/custom/svg-fonts-without-missing-glyph-expected.txt
    M    LayoutTests/platform/gtk/Skipped
    M    LayoutTests/ChangeLog
    M    LayoutTests/svg/custom/glyph-transformation-with-hkern-expected.txt
    M    Source/WebCore/ChangeLog
    M    Source/WebCore/platform/graphics/SimpleFontData.cpp
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76586 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index b726517..c25f62d 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,52 @@
+2011-01-25  Nikolas Zimmermann  <nzimmermann at rim.com>
+
+        Reviewed by Dirk Schulze.
+
+        Introduce FontMetrics abstraction
+        https://bugs.webkit.org/show_bug.cgi?id=51456
+
+        Update mac/mac-leopard pixel baseline after removing the float -> int truncation in the SVG Fonts ascent/descent calculation code.
+
+        * platform/gtk/Skipped: Unskip several tests.
+        * platform/mac-leopard/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.checksum:
+        * platform/mac-leopard/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png:
+        * platform/mac-leopard/svg/batik/text/textEffect-expected.checksum:
+        * platform/mac-leopard/svg/batik/text/textEffect-expected.png:
+        * platform/mac-leopard/svg/batik/text/textEffect3-expected.checksum:
+        * platform/mac-leopard/svg/batik/text/textEffect3-expected.png:
+        * platform/mac-leopard/svg/custom/svg-fonts-in-html-expected.checksum:
+        * platform/mac-leopard/svg/custom/svg-fonts-in-html-expected.png:
+        * platform/mac-leopard/svg/custom/svg-fonts-with-no-element-reference-expected.checksum:
+        * platform/mac-leopard/svg/custom/svg-fonts-with-no-element-reference-expected.png:
+        * platform/mac-leopard/svg/custom/svg-fonts-without-missing-glyph-expected.checksum:
+        * platform/mac-leopard/svg/custom/svg-fonts-without-missing-glyph-expected.png:
+        * platform/mac-leopard/svg/text/text-text-05-t-expected.checksum:
+        * platform/mac-leopard/svg/text/text-text-05-t-expected.png:
+        * platform/mac-leopard/svg/text/text-text-06-t-expected.checksum:
+        * platform/mac-leopard/svg/text/text-text-06-t-expected.png:
+        * platform/mac/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt:
+        * platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.txt:
+        * platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.txt:
+        * platform/mac/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt:
+        * platform/mac/svg/W3C-SVG-1.1/animate-elem-24-t-expected.png:
+        * platform/mac/svg/W3C-SVG-1.1/animate-elem-24-t-expected.txt:
+        * platform/mac/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.png:
+        * platform/mac/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.txt:
+        * platform/mac/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.txt:
+        * platform/mac/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt:
+        * platform/mac/svg/W3C-SVG-1.1/text-text-05-t-expected.txt:
+        * platform/mac/svg/W3C-SVG-1.1/text-text-06-t-expected.txt:
+        * platform/mac/svg/batik/text/textEffect-expected.txt:
+        * platform/mac/svg/batik/text/textEffect3-expected.txt:
+        * platform/mac/svg/batik/text/textPosition2-expected.png:
+        * platform/mac/svg/batik/text/textPosition2-expected.txt:
+        * platform/mac/svg/custom/svg-fonts-in-html-expected.txt:
+        * platform/mac/svg/custom/svg-fonts-with-no-element-reference-expected.txt:
+        * platform/mac/svg/custom/svg-fonts-without-missing-glyph-expected.txt:
+        * platform/mac/svg/text/text-text-05-t-expected.txt:
+        * platform/mac/svg/text/text-text-06-t-expected.txt:
+        * svg/custom/glyph-transformation-with-hkern-expected.txt:
+
 2011-01-25  Mario Sanchez Prada  <msanchez at igalia.com>
 
         Unreviewed, skipping flaky test on GTK debug bots.
diff --git a/LayoutTests/platform/gtk/Skipped b/LayoutTests/platform/gtk/Skipped
index 4fe037f..3b4bcfa 100644
--- a/LayoutTests/platform/gtk/Skipped
+++ b/LayoutTests/platform/gtk/Skipped
@@ -5603,15 +5603,6 @@ http/tests/security/local-iFrame-from-remote.html
 http/tests/security/local-image-from-remote.html
 http/tests/security/local-user-CSS-from-remote.html
 
-# 64bits bot fails and 32bits bots work on these tests
-# https://bugs.webkit.org/show_bug.cgi?id=52996
-svg/W3C-SVG-1.1-SE/filters-image-03-f.svg
-svg/W3C-SVG-1.1-SE/pservers-pattern-03-f.svg
-svg/text/text-hkern-on-vertical-text.svg
-svg/text/text-hkern.svg
-svg/text/text-vkern-on-horizontal-text.svg
-svg/text/text-vkern.svg
-
 # This media test seems to time out.
 # https://bugs.webkit.org/show_bug.cgi?id=53056
 media/unsupported-rtsp.html
diff --git a/LayoutTests/platform/mac-leopard/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.checksum b/LayoutTests/platform/mac-leopard/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.checksum
index 8535cdd..0124926 100644
--- a/LayoutTests/platform/mac-leopard/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.checksum
+++ b/LayoutTests/platform/mac-leopard/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.checksum
@@ -1 +1 @@
-e77f4e3d368a6745616b4bba8f27fc7b
\ No newline at end of file
+f07a4f60a1d402a0b29f82a264ef7644
\ No newline at end of file
diff --git a/LayoutTests/platform/mac-leopard/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png b/LayoutTests/platform/mac-leopard/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png
index dbf53db..15cf1b4 100644
Binary files a/LayoutTests/platform/mac-leopard/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png and b/LayoutTests/platform/mac-leopard/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png differ
diff --git a/LayoutTests/platform/mac-leopard/svg/batik/text/textEffect-expected.checksum b/LayoutTests/platform/mac-leopard/svg/batik/text/textEffect-expected.checksum
index 4aee957..7b693c2 100644
--- a/LayoutTests/platform/mac-leopard/svg/batik/text/textEffect-expected.checksum
+++ b/LayoutTests/platform/mac-leopard/svg/batik/text/textEffect-expected.checksum
@@ -1 +1 @@
-e14a142f0d5460b2f97b61cdce4f2610
\ No newline at end of file
+e7acd6067d3bfdabb96650c7bc2b9c95
\ No newline at end of file
diff --git a/LayoutTests/platform/mac-leopard/svg/batik/text/textEffect-expected.png b/LayoutTests/platform/mac-leopard/svg/batik/text/textEffect-expected.png
index 8fb1ce1..9aa6d39 100644
Binary files a/LayoutTests/platform/mac-leopard/svg/batik/text/textEffect-expected.png and b/LayoutTests/platform/mac-leopard/svg/batik/text/textEffect-expected.png differ
diff --git a/LayoutTests/platform/mac-leopard/svg/batik/text/textEffect3-expected.checksum b/LayoutTests/platform/mac-leopard/svg/batik/text/textEffect3-expected.checksum
index e0bdc61..a7a3787 100644
--- a/LayoutTests/platform/mac-leopard/svg/batik/text/textEffect3-expected.checksum
+++ b/LayoutTests/platform/mac-leopard/svg/batik/text/textEffect3-expected.checksum
@@ -1 +1 @@
-ad1b995d41094ed2c89f381290342b30
\ No newline at end of file
+a73b1391929f72bfc963d351a9f68059
\ No newline at end of file
diff --git a/LayoutTests/platform/mac-leopard/svg/batik/text/textEffect3-expected.png b/LayoutTests/platform/mac-leopard/svg/batik/text/textEffect3-expected.png
index c458315..92043b4 100644
Binary files a/LayoutTests/platform/mac-leopard/svg/batik/text/textEffect3-expected.png and b/LayoutTests/platform/mac-leopard/svg/batik/text/textEffect3-expected.png differ
diff --git a/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-in-html-expected.checksum b/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-in-html-expected.checksum
index 04dedd7..950fdc4 100644
--- a/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-in-html-expected.checksum
+++ b/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-in-html-expected.checksum
@@ -1 +1 @@
-0db889d95c888c22b113e05907613704
\ No newline at end of file
+f578ceabc7cef1088b29cdc021145b71
\ No newline at end of file
diff --git a/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-in-html-expected.png b/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-in-html-expected.png
index 7c3899d..f23de61 100644
Binary files a/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-in-html-expected.png and b/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-in-html-expected.png differ
diff --git a/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-with-no-element-reference-expected.checksum b/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-with-no-element-reference-expected.checksum
index f75ce03..6653883 100644
--- a/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-with-no-element-reference-expected.checksum
+++ b/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-with-no-element-reference-expected.checksum
@@ -1 +1 @@
-397aa17de66748a2aba4fddf879ef7ef
\ No newline at end of file
+5d31634f249acba54652b5e09bcef70d
\ No newline at end of file
diff --git a/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-with-no-element-reference-expected.png b/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-with-no-element-reference-expected.png
index 55738f0..0f7d4cb 100644
Binary files a/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-with-no-element-reference-expected.png and b/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-with-no-element-reference-expected.png differ
diff --git a/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-without-missing-glyph-expected.checksum b/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-without-missing-glyph-expected.checksum
index a030c77..1091820 100644
--- a/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-without-missing-glyph-expected.checksum
+++ b/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-without-missing-glyph-expected.checksum
@@ -1 +1 @@
-365aa91d56141671987e1296891083f2
\ No newline at end of file
+c89d88e37a2b186cfdfb6eb9244c5757
\ No newline at end of file
diff --git a/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-without-missing-glyph-expected.png b/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-without-missing-glyph-expected.png
index fd1a833..2ed9777 100644
Binary files a/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-without-missing-glyph-expected.png and b/LayoutTests/platform/mac-leopard/svg/custom/svg-fonts-without-missing-glyph-expected.png differ
diff --git a/LayoutTests/platform/mac-leopard/svg/text/text-text-05-t-expected.checksum b/LayoutTests/platform/mac-leopard/svg/text/text-text-05-t-expected.checksum
index 4635c95..d820a1f 100644
--- a/LayoutTests/platform/mac-leopard/svg/text/text-text-05-t-expected.checksum
+++ b/LayoutTests/platform/mac-leopard/svg/text/text-text-05-t-expected.checksum
@@ -1 +1 @@
-9f915ead41dcba5bc22696cf8c7f7d42
\ No newline at end of file
+f6db031052fcbc5d4b750f1f2e4a59f2
\ No newline at end of file
diff --git a/LayoutTests/platform/mac-leopard/svg/text/text-text-05-t-expected.png b/LayoutTests/platform/mac-leopard/svg/text/text-text-05-t-expected.png
index c307f8e..e947615 100644
Binary files a/LayoutTests/platform/mac-leopard/svg/text/text-text-05-t-expected.png and b/LayoutTests/platform/mac-leopard/svg/text/text-text-05-t-expected.png differ
diff --git a/LayoutTests/platform/mac-leopard/svg/text/text-text-06-t-expected.checksum b/LayoutTests/platform/mac-leopard/svg/text/text-text-06-t-expected.checksum
index abc977c..4fa0b78 100644
--- a/LayoutTests/platform/mac-leopard/svg/text/text-text-06-t-expected.checksum
+++ b/LayoutTests/platform/mac-leopard/svg/text/text-text-06-t-expected.checksum
@@ -1 +1 @@
-b1628680afe14164ca7fde517a464898
\ No newline at end of file
+e137c04ded88306a5d8ca749a8970e51
\ No newline at end of file
diff --git a/LayoutTests/platform/mac-leopard/svg/text/text-text-06-t-expected.png b/LayoutTests/platform/mac-leopard/svg/text/text-text-06-t-expected.png
index a4bc7a1..e88f738 100644
Binary files a/LayoutTests/platform/mac-leopard/svg/text/text-text-06-t-expected.png and b/LayoutTests/platform/mac-leopard/svg/text/text-text-06-t-expected.png differ
diff --git a/LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt b/LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt
index 2fc3232..8717dff 100644
--- a/LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt
+++ b/LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt
@@ -49,9 +49,9 @@ layer at (0,0) size 480x360
           RenderSVGPath {rect} at (159,199) size 52x52 [stroke={[type=SOLID] [color=#0000FF]}] [x=100.00] [y=100.00] [width=50.00] [height=50.00]
           RenderSVGPath {rect} at (259,199) size 52x52 [stroke={[type=SOLID] [color=#0000FF]}] [x=200.00] [y=100.00] [width=50.00] [height=50.00]
           RenderSVGPath {rect} at (359,199) size 52x52 [stroke={[type=SOLID] [color=#0000FF]}] [x=300.00] [y=100.00] [width=50.00] [height=50.00]
-    RenderSVGContainer {g} at (10,314) size 223x32
-      RenderSVGText {text} at (10,314) size 223x32 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,0) size 223x32
+    RenderSVGContainer {g} at (10,313) size 223x33
+      RenderSVGText {text} at (10,313) size 223x33 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 223x33
           chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 2 width 40.90: "$R"
           chunk 1 text run 2 at (50.51,340.00) startOffset 2 endOffset 3 width 17.79: "e"
           chunk 1 text run 3 at (67.82,340.00) startOffset 3 endOffset 12 width 117.38: "vision: 1"
diff --git a/LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.txt b/LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.txt
index 24d02dd..ed26be5 100644
--- a/LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.txt
+++ b/LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.txt
@@ -3,7 +3,7 @@ layer at (0,0) size 480x360
 layer at (0,0) size 480x360
   RenderSVGRoot {svg} at (0,0) size 480x360
     RenderSVGHiddenContainer {defs} at (0,0) size 0x0
-    RenderSVGContainer {g} at (49,81) size 376x172
+    RenderSVGContainer {g} at (49,81) size 376x173
       RenderSVGHiddenContainer {defs} at (0,0) size 0x0
         RenderSVGResourceLinearGradient {linearGradient} [id="grad"] [gradientUnits=objectBoundingBox] [start=(0,0)] [end=(1,0)]
           RenderSVGGradientStop {stop} [offset=0.00] [color=#000000]
@@ -14,8 +14,8 @@ layer at (0,0) size 480x360
         RenderSVGPath {line} at (119,82) size 6x144 [transform={m=((0.00,1.00)(-1.00,0.00)) t=(420.00,-60.00)}] [stroke={[type=LINEAR-GRADIENT] [id="grad"] [stroke width=20.00]}] [fill={[type=SOLID] [color=#000000]}] [x1=0.00] [y1=180.00] [x2=480.00] [y2=180.00]
         RenderSVGPath {line} at (68,100) size 108x108 [stroke={[type=LINEAR-GRADIENT] [id="grad"] [stroke width=20.00]}] [fill={[type=SOLID] [color=#000000]}] [x1=410.00] [y1=10.00] [x2=70.00] [y2=350.00]
         RenderSVGPath {rect} at (49,81) size 146x146 [stroke={[type=SOLID] [color=#000000]}] [x=0.00] [y=-60.00] [width=480.00] [height=480.00]
-      RenderSVGText {text} at (69,236) size 102x17 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,0) size 102x17
+      RenderSVGText {text} at (69,235) size 102x19 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 102x19
           chunk 1 (middle anchor) text run 1 at (69.04,250.00) startOffset 0 endOffset 1 width 16.99: "W"
           chunk 1 (middle anchor) text run 2 at (86.02,250.00) startOffset 1 endOffset 3 width 9.00: "it"
           chunk 1 (middle anchor) text run 3 at (94.96,250.00) startOffset 3 endOffset 6 width 20.02: "h f"
@@ -27,16 +27,16 @@ layer at (0,0) size 480x360
         RenderSVGPath {line} at (349,82) size 6x144 [transform={m=((0.00,1.00)(-1.00,0.00)) t=(420.00,-60.00)}] [stroke={[type=LINEAR-GRADIENT] [id="grad"] [stroke width=20.00]}] [fill={[type=SOLID] [color=#000000]}] [x1=0.00] [y1=180.00] [x2=480.00] [y2=180.00]
         RenderSVGPath {line} at (298,100) size 108x108 [stroke={[type=LINEAR-GRADIENT] [id="grad"] [stroke width=20.00]}] [fill={[type=SOLID] [color=#000000]}] [x1=410.00] [y1=10.00] [x2=70.00] [y2=350.00]
         RenderSVGPath {rect} at (279,81) size 146x146 [stroke={[type=SOLID] [color=#000000]}] [x=0.00] [y=-60.00] [width=480.00] [height=480.00]
-      RenderSVGText {text} at (286,236) size 128x17 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,0) size 128x17
+      RenderSVGText {text} at (286,235) size 128x19 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 128x19
           chunk 1 (middle anchor) text run 1 at (286.53,250.00) startOffset 0 endOffset 1 width 16.99: "W"
           chunk 1 (middle anchor) text run 2 at (303.51,250.00) startOffset 1 endOffset 3 width 9.00: "it"
           chunk 1 (middle anchor) text run 3 at (312.45,250.00) startOffset 3 endOffset 9 width 45.04: "hout f"
           chunk 1 (middle anchor) text run 4 at (357.33,250.00) startOffset 9 endOffset 15 width 47.02: "allbac"
           chunk 1 (middle anchor) text run 5 at (404.47,250.00) startOffset 15 endOffset 16 width 9.00: "k"
-    RenderSVGContainer {g} at (10,314) size 227x32
-      RenderSVGText {text} at (10,314) size 227x32 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,0) size 227x32
+    RenderSVGContainer {g} at (10,313) size 227x33
+      RenderSVGText {text} at (10,313) size 227x33 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 227x33
           chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 2 width 40.90: "$R"
           chunk 1 text run 2 at (50.51,340.00) startOffset 2 endOffset 3 width 17.79: "e"
           chunk 1 text run 3 at (67.82,340.00) startOffset 3 endOffset 12 width 117.38: "vision: 1"
diff --git a/LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.txt b/LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.txt
index 1e4190f..5653efa 100644
--- a/LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.txt
+++ b/LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.txt
@@ -3,7 +3,7 @@ layer at (0,0) size 480x360
 layer at (0,0) size 480x360
   RenderSVGRoot {svg} at (0,0) size 480x360
     RenderSVGHiddenContainer {defs} at (0,0) size 0x0
-    RenderSVGContainer {g} at (49,81) size 376x172
+    RenderSVGContainer {g} at (49,81) size 376x173
       RenderSVGHiddenContainer {defs} at (0,0) size 0x0
         RenderSVGResourceLinearGradient {linearGradient} [id="grad"] [gradientUnits=objectBoundingBox] [start=(0,0)] [end=(1,0)]
           RenderSVGGradientStop {stop} [offset=0.00] [color=#000000]
@@ -14,8 +14,8 @@ layer at (0,0) size 480x360
         RenderSVGPath {path} at (119,82) size 6x144 [transform={m=((0.00,1.00)(-1.00,0.00)) t=(420.00,-60.00)}] [stroke={[type=LINEAR-GRADIENT] [id="grad"] [stroke width=20.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M 0 180 L 480 180"]
         RenderSVGPath {path} at (68,100) size 108x108 [stroke={[type=LINEAR-GRADIENT] [id="grad"] [stroke width=20.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M 410 10 L 70 350"]
         RenderSVGPath {rect} at (49,81) size 146x146 [stroke={[type=SOLID] [color=#000000]}] [x=0.00] [y=-60.00] [width=480.00] [height=480.00]
-      RenderSVGText {text} at (69,236) size 102x17 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,0) size 102x17
+      RenderSVGText {text} at (69,235) size 102x19 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 102x19
           chunk 1 (middle anchor) text run 1 at (69.04,250.00) startOffset 0 endOffset 1 width 16.99: "W"
           chunk 1 (middle anchor) text run 2 at (86.02,250.00) startOffset 1 endOffset 3 width 9.00: "it"
           chunk 1 (middle anchor) text run 3 at (94.96,250.00) startOffset 3 endOffset 6 width 20.02: "h f"
@@ -27,16 +27,16 @@ layer at (0,0) size 480x360
         RenderSVGPath {path} at (349,82) size 6x144 [transform={m=((0.00,1.00)(-1.00,0.00)) t=(420.00,-60.00)}] [stroke={[type=LINEAR-GRADIENT] [id="grad"] [stroke width=20.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M 0 180 L 480 180"]
         RenderSVGPath {path} at (298,100) size 108x108 [stroke={[type=LINEAR-GRADIENT] [id="grad"] [stroke width=20.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M 410 10 L 70 350"]
         RenderSVGPath {rect} at (279,81) size 146x146 [stroke={[type=SOLID] [color=#000000]}] [x=0.00] [y=-60.00] [width=480.00] [height=480.00]
-      RenderSVGText {text} at (286,236) size 128x17 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,0) size 128x17
+      RenderSVGText {text} at (286,235) size 128x19 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 128x19
           chunk 1 (middle anchor) text run 1 at (286.53,250.00) startOffset 0 endOffset 1 width 16.99: "W"
           chunk 1 (middle anchor) text run 2 at (303.51,250.00) startOffset 1 endOffset 3 width 9.00: "it"
           chunk 1 (middle anchor) text run 3 at (312.45,250.00) startOffset 3 endOffset 9 width 45.04: "hout f"
           chunk 1 (middle anchor) text run 4 at (357.33,250.00) startOffset 9 endOffset 15 width 47.02: "allbac"
           chunk 1 (middle anchor) text run 5 at (404.47,250.00) startOffset 15 endOffset 16 width 9.00: "k"
-    RenderSVGContainer {g} at (10,314) size 227x32
-      RenderSVGText {text} at (10,314) size 227x32 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,0) size 227x32
+    RenderSVGContainer {g} at (10,313) size 227x33
+      RenderSVGText {text} at (10,313) size 227x33 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 227x33
           chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 2 width 40.90: "$R"
           chunk 1 text run 2 at (50.51,340.00) startOffset 2 endOffset 3 width 17.79: "e"
           chunk 1 text run 3 at (67.82,340.00) startOffset 3 endOffset 12 width 117.38: "vision: 1"
diff --git a/LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt b/LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt
index a602833..a17ae72 100644
--- a/LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt
+++ b/LayoutTests/platform/mac/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt
@@ -28,9 +28,9 @@ layer at (0,0) size 480x360
         RenderSVGPath {rect} at (139,159) size 102x102 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=PATTERN] [id="invisible6"]}] [x=100.00] [y=100.00] [width=100.00] [height=100.00]
         RenderSVGPath {rect} at (239,159) size 102x102 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=PATTERN] [id="invisible7"]}] [x=200.00] [y=100.00] [width=100.00] [height=100.00]
         RenderSVGPath {rect} at (339,159) size 102x102 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#00FF00]}] [x=300.00] [y=100.00] [width=100.00] [height=100.00]
-    RenderSVGContainer {g} at (10,314) size 223x32
-      RenderSVGText {text} at (10,314) size 223x32 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,0) size 223x32
+    RenderSVGContainer {g} at (10,313) size 223x33
+      RenderSVGText {text} at (10,313) size 223x33 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 223x33
           chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 2 width 40.90: "$R"
           chunk 1 text run 2 at (50.51,340.00) startOffset 2 endOffset 3 width 17.79: "e"
           chunk 1 text run 3 at (67.82,340.00) startOffset 3 endOffset 12 width 117.38: "vision: 1"
diff --git a/LayoutTests/platform/mac/svg/W3C-SVG-1.1/animate-elem-24-t-expected.png b/LayoutTests/platform/mac/svg/W3C-SVG-1.1/animate-elem-24-t-expected.png
index b374160..e6a0e79 100644
Binary files a/LayoutTests/platform/mac/svg/W3C-SVG-1.1/animate-elem-24-t-expected.png and b/LayoutTests/platform/mac/svg/W3C-SVG-1.1/animate-elem-24-t-expected.png differ
diff --git a/LayoutTests/platform/mac/svg/W3C-SVG-1.1/animate-elem-24-t-expected.txt b/LayoutTests/platform/mac/svg/W3C-SVG-1.1/animate-elem-24-t-expected.txt
index d32b2ec..48c92c4 100644
--- a/LayoutTests/platform/mac/svg/W3C-SVG-1.1/animate-elem-24-t-expected.txt
+++ b/LayoutTests/platform/mac/svg/W3C-SVG-1.1/animate-elem-24-t-expected.txt
@@ -3,7 +3,7 @@ layer at (0,0) size 480x360
 layer at (0,0) size 480x360
   RenderSVGRoot {svg} at (0,0) size 480x360
     RenderSVGHiddenContainer {defs} at (0,0) size 0x0
-    RenderSVGContainer {g} at (42,38) size 289x239
+    RenderSVGContainer {g} at (42,38) size 289x240
       RenderSVGContainer {g} at (70,92) size 149x133
         RenderSVGText {text} at (70,92) size 149x23 contains 1 chunk(s)
           RenderSVGInlineText {#text} at (0,0) size 149x23
@@ -14,19 +14,19 @@ layer at (0,0) size 480x360
         RenderSVGText {text} at (100,202) size 80x23 contains 1 chunk(s)
           RenderSVGInlineText {#text} at (0,0) size 80x23
             chunk 1 text run 1 at (100.00,220.00) startOffset 0 endOffset 10 width 80.00: "Text at 9s"
-      RenderSVGContainer {g} at (42,38) size 289x239
-        RenderSVGText {text} at (0,-15) size 77x17 contains 1 chunk(s)
-          RenderSVGInlineText {#text} at (0,0) size 77x17
+      RenderSVGContainer {g} at (42,38) size 289x240
+        RenderSVGText {text} at (0,-15) size 77x18 contains 1 chunk(s)
+          RenderSVGInlineText {#text} at (0,0) size 77x18
             chunk 1 text run 1 at (0.00,0.00) startOffset 0 endOffset 11 width 76.84: "It's alive!"
         RenderSVGText {text} at (0,-30) size 154x35 contains 1 chunk(s)
           RenderSVGInlineText {#text} at (0,0) size 154x35
             chunk 1 text run 1 at (0.00,0.00) startOffset 0 endOffset 11 width 153.68: "It's alive!"
-        RenderSVGText {text} at (100,225) size 231x52 contains 1 chunk(s)
-          RenderSVGInlineText {#text} at (0,0) size 231x52
+        RenderSVGText {text} at (100,225) size 231x53 contains 1 chunk(s)
+          RenderSVGInlineText {#text} at (0,0) size 231x53
             chunk 1 text run 1 at (100.00,270.00) startOffset 0 endOffset 11 width 230.52: "It's alive!"
-      RenderSVGContainer {g} at (42,38) size 76x54 [transform={m=((1.00,0.00)(0.00,1.00)) t=(50.00,90.00)}]
-        RenderSVGText {text} at (0,-15) size 77x17 contains 1 chunk(s)
-          RenderSVGInlineText {#text} at (0,0) size 77x17
+      RenderSVGContainer {g} at (42,38) size 77x55 [transform={m=((1.00,0.00)(0.00,1.00)) t=(50.00,90.00)}]
+        RenderSVGText {text} at (0,-15) size 77x18 contains 1 chunk(s)
+          RenderSVGInlineText {#text} at (0,0) size 77x18
             chunk 1 text run 1 at (0.00,0.00) startOffset 0 endOffset 11 width 76.84: "It's alive!"
           RenderSVGInlineText {#text} at (0,0) size 0x0
           RenderSVGInlineText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/mac/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.png b/LayoutTests/platform/mac/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.png
index 0384b60..c474c1c 100644
Binary files a/LayoutTests/platform/mac/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.png and b/LayoutTests/platform/mac/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.png differ
diff --git a/LayoutTests/platform/mac/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.txt b/LayoutTests/platform/mac/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.txt
index 9c7fb4e..65d1e63 100644
--- a/LayoutTests/platform/mac/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.txt
+++ b/LayoutTests/platform/mac/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.txt
@@ -2,15 +2,15 @@ layer at (0,0) size 480x360
   RenderView at (0,0) size 480x360
 layer at (0,0) size 480x360
   RenderSVGRoot {svg} at (0,0) size 480x360
-    RenderSVGContainer {g} at (100,32) size 224x199
+    RenderSVGContainer {g} at (100,32) size 224x200
       RenderSVGHiddenContainer {defs} at (0,0) size 0x0
       RenderSVGContainer {g} at (100,32) size 184x84
         RenderSVGText {text} at (100,32) size 184x84 contains 1 chunk(s)
           RenderSVGInlineText {#text} at (0,0) size 184x84
             chunk 1 text run 1 at (100.00,100.00) startOffset 0 endOffset 5 width 184.00 RTL: "\x{69A} \x{69A}\x{69A}\x{69A}"
-      RenderSVGContainer {g} at (100,114) size 224x117
-        RenderSVGText {text} at (100,114) size 224x117 contains 1 chunk(s)
-          RenderSVGInlineText {#text} at (0,0) size 224x117
+      RenderSVGContainer {g} at (100,114) size 224x118
+        RenderSVGText {text} at (100,114) size 224x118 contains 1 chunk(s)
+          RenderSVGInlineText {#text} at (0,0) size 224x118
             chunk 1 text run 1 at (100.00,200.00) startOffset 0 endOffset 5 width 223.92 RTL: "\x{62E} \x{62E}\x{62E}\x{62E}"
     RenderSVGText {text} at (10,304) size 264x46 contains 1 chunk(s)
       RenderSVGInlineText {#text} at (0,0) size 264x46
diff --git a/LayoutTests/platform/mac/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.txt b/LayoutTests/platform/mac/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.txt
index 2fd1c45..aad7960 100644
--- a/LayoutTests/platform/mac/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.txt
+++ b/LayoutTests/platform/mac/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.txt
@@ -31,7 +31,7 @@ layer at (0,0) size 480x360
           RenderSVGText {text} at (5,4) size 73x14 contains 1 chunk(s)
             RenderSVGInlineText {#text} at (0,0) size 73x14
               chunk 1 text run 1 at (5.00,15.00) startOffset 0 endOffset 13 width 73.00: "u1=\"1\" u2=\"2\""
-          RenderSVGContainer {g} at (31,81) size 54x28 [transform={m=((2.00,0.00)(0.00,2.00)) t=(5.00,45.00)}]
+          RenderSVGContainer {g} at (31,81) size 54x30 [transform={m=((2.00,0.00)(0.00,2.00)) t=(5.00,45.00)}]
             RenderSVGContainer {use} at (31,81) size 28x28
               RenderSVGContainer {g} at (31,81) size 28x28
                 RenderSVGContainer {g} at (31,81) size 28x28
@@ -44,8 +44,8 @@ layer at (0,0) size 480x360
                   RenderSVGPath {line} at (57,81) size 6x24 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-12.00]
                   RenderSVGPath {line} at (59,103) size 26x4 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=12.00] [y2=0.00]
                   RenderSVGPath {rect} at (55,101) size 10x8 [fill={[type=SOLID] [color=#FF0000]}] [x=-2.00] [y=-2.00] [width=4.00] [height=4.00]
-            RenderSVGText {text} at (0,-9) size 18x11 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 18x11
+            RenderSVGText {text} at (0,-9) size 18x12 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 18x12
                 chunk 1 text run 1 at (0.00,0.00) startOffset 0 endOffset 1 width 2.50: "1"
                 chunk 1 text run 2 at (12.50,0.00) startOffset 1 endOffset 2 width 5.00: "2"
         RenderSVGContainer {g} at (9,114) size 222x52 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,55.00)}]
@@ -63,7 +63,7 @@ layer at (0,0) size 480x360
           RenderSVGText {text} at (5,1) size 138x18 contains 1 chunk(s)
             RenderSVGInlineText {#text} at (0,0) size 138x18
               chunk 1 text run 1 at (5.00,15.00) startOffset 0 endOffset 19 width 138.00: "g1=\"gl_1\" g2=\"gl_2\""
-          RenderSVGContainer {g} at (31,136) size 74x28 [transform={m=((2.00,0.00)(0.00,2.00)) t=(5.00,45.00)}]
+          RenderSVGContainer {g} at (31,136) size 74x30 [transform={m=((2.00,0.00)(0.00,2.00)) t=(5.00,45.00)}]
             RenderSVGContainer {use} at (31,136) size 28x28
               RenderSVGContainer {g} at (31,136) size 28x28
                 RenderSVGContainer {g} at (31,136) size 28x28
@@ -76,8 +76,8 @@ layer at (0,0) size 480x360
                   RenderSVGPath {line} at (77,136) size 6x24 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-12.00]
                   RenderSVGPath {line} at (79,158) size 26x4 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=12.00] [y2=0.00]
                   RenderSVGPath {rect} at (75,156) size 10x8 [fill={[type=SOLID] [color=#FF0000]}] [x=-2.00] [y=-2.00] [width=4.00] [height=4.00]
-            RenderSVGText {text} at (0,-9) size 28x11 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 28x11
+            RenderSVGText {text} at (0,-9) size 28x12 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 28x12
                 chunk 1 text run 1 at (0.00,0.00) startOffset 0 endOffset 1 width 2.50: "1"
                 chunk 1 text run 2 at (22.50,0.00) startOffset 1 endOffset 2 width 5.00: "2"
         RenderSVGContainer {g} at (9,169) size 266x52 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,110.00)}]
@@ -95,7 +95,7 @@ layer at (0,0) size 480x360
           RenderSVGText {text} at (5,1) size 240x18 contains 1 chunk(s)
             RenderSVGInlineText {#text} at (0,0) size 240x18
               chunk 1 text run 1 at (5.00,15.00) startOffset 0 endOffset 33 width 240.00: "u1=\"1\" u2=\"2\" g1=\"gl_3\" g2=\"gl_4\""
-          RenderSVGContainer {g} at (31,191) size 138x28 [transform={m=((2.00,0.00)(0.00,2.00)) t=(5.00,45.00)}]
+          RenderSVGContainer {g} at (31,191) size 138x30 [transform={m=((2.00,0.00)(0.00,2.00)) t=(5.00,45.00)}]
             RenderSVGContainer {use} at (31,191) size 28x28
               RenderSVGContainer {g} at (31,191) size 28x28
                 RenderSVGContainer {g} at (31,191) size 28x28
@@ -120,8 +120,8 @@ layer at (0,0) size 480x360
                   RenderSVGPath {line} at (143,191) size 4x24 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-12.00]
                   RenderSVGPath {line} at (145,213) size 24x4 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=12.00] [y2=0.00]
                   RenderSVGPath {rect} at (141,211) size 8x8 [fill={[type=SOLID] [color=#FF0000]}] [x=-2.00] [y=-2.00] [width=4.00] [height=4.00]
-            RenderSVGText {text} at (0,-9) size 65x11 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 65x11
+            RenderSVGText {text} at (0,-9) size 65x12 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 65x12
                 chunk 1 text run 1 at (0.00,0.00) startOffset 0 endOffset 1 width 2.50: "1"
                 chunk 1 text run 2 at (17.50,0.00) startOffset 1 endOffset 3 width 22.50: "23"
                 chunk 1 text run 3 at (55.00,0.00) startOffset 3 endOffset 4 width 10.00: "4"
@@ -140,7 +140,7 @@ layer at (0,0) size 480x360
           RenderSVGText {text} at (5,1) size 122x18 contains 1 chunk(s)
             RenderSVGInlineText {#text} at (0,0) size 122x18
               chunk 1 text run 1 at (5.00,15.00) startOffset 0 endOffset 17 width 122.00: "u1=\"1,3\" u2=\"2,4\""
-          RenderSVGContainer {g} at (31,246) size 138x28 [transform={m=((2.00,0.00)(0.00,2.00)) t=(5.00,45.00)}]
+          RenderSVGContainer {g} at (31,246) size 138x30 [transform={m=((2.00,0.00)(0.00,2.00)) t=(5.00,45.00)}]
             RenderSVGContainer {use} at (31,246) size 28x28
               RenderSVGContainer {g} at (31,246) size 28x28
                 RenderSVGContainer {g} at (31,246) size 28x28
@@ -165,8 +165,8 @@ layer at (0,0) size 480x360
                   RenderSVGPath {line} at (143,246) size 4x24 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-12.00]
                   RenderSVGPath {line} at (145,268) size 24x4 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=12.00] [y2=0.00]
                   RenderSVGPath {rect} at (141,266) size 8x8 [fill={[type=SOLID] [color=#FF0000]}] [x=-2.00] [y=-2.00] [width=4.00] [height=4.00]
-            RenderSVGText {text} at (0,-9) size 65x11 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 65x11
+            RenderSVGText {text} at (0,-9) size 65x12 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 65x12
                 chunk 1 text run 1 at (0.00,0.00) startOffset 0 endOffset 1 width 2.50: "1"
                 chunk 1 text run 2 at (17.50,0.00) startOffset 1 endOffset 3 width 22.50: "23"
                 chunk 1 text run 3 at (55.00,0.00) startOffset 3 endOffset 4 width 10.00: "4"
@@ -185,7 +185,7 @@ layer at (0,0) size 480x360
           RenderSVGText {text} at (5,1) size 202x18 contains 1 chunk(s)
             RenderSVGInlineText {#text} at (0,0) size 202x18
               chunk 1 text run 1 at (5.00,15.00) startOffset 0 endOffset 29 width 202.00: "g1=\"gl_1,gl_3\" g2=\"gl_2,gl_4\""
-          RenderSVGContainer {g} at (271,81) size 138x28 [transform={m=((2.00,0.00)(0.00,2.00)) t=(5.00,45.00)}]
+          RenderSVGContainer {g} at (271,81) size 138x30 [transform={m=((2.00,0.00)(0.00,2.00)) t=(5.00,45.00)}]
             RenderSVGContainer {use} at (271,81) size 28x28
               RenderSVGContainer {g} at (271,81) size 28x28
                 RenderSVGContainer {g} at (271,81) size 28x28
@@ -210,8 +210,8 @@ layer at (0,0) size 480x360
                   RenderSVGPath {line} at (383,81) size 4x24 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-12.00]
                   RenderSVGPath {line} at (385,103) size 24x4 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=12.00] [y2=0.00]
                   RenderSVGPath {rect} at (381,101) size 8x8 [fill={[type=SOLID] [color=#FF0000]}] [x=-2.00] [y=-2.00] [width=4.00] [height=4.00]
-            RenderSVGText {text} at (0,-9) size 65x11 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 65x11
+            RenderSVGText {text} at (0,-9) size 65x12 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 65x12
                 chunk 1 text run 1 at (0.00,0.00) startOffset 0 endOffset 1 width 2.50: "1"
                 chunk 1 text run 2 at (17.50,0.00) startOffset 1 endOffset 3 width 22.50: "23"
                 chunk 1 text run 3 at (55.00,0.00) startOffset 3 endOffset 4 width 10.00: "4"
@@ -230,7 +230,7 @@ layer at (0,0) size 480x360
           RenderSVGText {text} at (5,1) size 208x18 contains 1 chunk(s)
             RenderSVGInlineText {#text} at (0,0) size 208x18
               chunk 1 text run 1 at (5.00,15.00) startOffset 0 endOffset 26 width 208.00: "u1=\"U+003?\" u2=\"U+0031-34\""
-          RenderSVGContainer {g} at (271,136) size 168x28 [transform={m=((2.00,0.00)(0.00,2.00)) t=(5.00,45.00)}]
+          RenderSVGContainer {g} at (271,136) size 168x30 [transform={m=((2.00,0.00)(0.00,2.00)) t=(5.00,45.00)}]
             RenderSVGContainer {use} at (271,136) size 28x28
               RenderSVGContainer {g} at (271,136) size 28x28
                 RenderSVGContainer {g} at (271,136) size 28x28
@@ -255,8 +255,8 @@ layer at (0,0) size 480x360
                   RenderSVGPath {line} at (413,136) size 4x24 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-12.00]
                   RenderSVGPath {line} at (415,158) size 24x4 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=12.00] [y2=0.00]
                   RenderSVGPath {rect} at (411,156) size 8x8 [fill={[type=SOLID] [color=#FF0000]}] [x=-2.00] [y=-2.00] [width=4.00] [height=4.00]
-            RenderSVGText {text} at (0,-9) size 80x11 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 80x11
+            RenderSVGText {text} at (0,-9) size 80x12 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 80x12
                 chunk 1 text run 1 at (0.00,0.00) startOffset 0 endOffset 1 width 2.50: "1"
                 chunk 1 text run 2 at (17.50,0.00) startOffset 1 endOffset 2 width 15.00: "2"
                 chunk 1 text run 3 at (47.50,0.00) startOffset 2 endOffset 3 width 7.50: "3"
@@ -276,7 +276,7 @@ layer at (0,0) size 480x360
           RenderSVGText {text} at (5,1) size 118x18 contains 1 chunk(s)
             RenderSVGInlineText {#text} at (0,0) size 118x18
               chunk 1 text run 1 at (5.00,15.00) startOffset 0 endOffset 16 width 118.00: "u1=\"1\" g2=\"gl_2\""
-          RenderSVGContainer {g} at (271,191) size 60x28 [transform={m=((2.00,0.00)(0.00,2.00)) t=(5.00,45.00)}]
+          RenderSVGContainer {g} at (271,191) size 60x30 [transform={m=((2.00,0.00)(0.00,2.00)) t=(5.00,45.00)}]
             RenderSVGContainer {use} at (271,191) size 28x28
               RenderSVGContainer {g} at (271,191) size 28x28
                 RenderSVGContainer {g} at (271,191) size 28x28
@@ -289,8 +289,8 @@ layer at (0,0) size 480x360
                   RenderSVGPath {line} at (297,191) size 6x24 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-12.00]
                   RenderSVGPath {line} at (299,213) size 26x4 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=12.00] [y2=0.00]
                   RenderSVGPath {rect} at (295,211) size 10x8 [fill={[type=SOLID] [color=#FF0000]}] [x=-2.00] [y=-2.00] [width=4.00] [height=4.00]
-            RenderSVGText {text} at (0,-9) size 28x11 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 28x11
+            RenderSVGText {text} at (0,-9) size 28x12 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 28x12
                 chunk 1 text run 1 at (0.00,0.00) startOffset 0 endOffset 1 width 2.50: "1"
                 chunk 1 text run 2 at (12.50,0.00) startOffset 1 endOffset 2 width 15.00: "2"
       RenderSVGContainer {g} at (0,0) size 0x0 [transform={m=((1.00,0.00)(0.00,1.00)) t=(320.00,100.00)}]
diff --git a/LayoutTests/platform/mac/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt b/LayoutTests/platform/mac/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt
index d4ce98f..daff8c8 100644
--- a/LayoutTests/platform/mac/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt
+++ b/LayoutTests/platform/mac/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt
@@ -3,15 +3,15 @@ layer at (0,0) size 480x360
 layer at (0,0) size 480x360
   RenderSVGRoot {svg} at (0,0) size 480x360
     RenderSVGHiddenContainer {defs} at (0,0) size 0x0
-    RenderSVGContainer {g} at (17,30) size 450x224 [transform={m=((1.00,0.00)(0.00,1.50)) t=(0.00,0.00)}]
+    RenderSVGContainer {g} at (17,28) size 450x227 [transform={m=((1.00,0.00)(0.00,1.50)) t=(0.00,0.00)}]
       RenderSVGResourceLinearGradient {linearGradient} [id="Gradient"] [gradientUnits=userSpaceOnUse] [start=(10,10)] [end=(440,10)]
         RenderSVGGradientStop {stop} [offset=0.00] [color=#0000FF]
         RenderSVGGradientStop {stop} [offset=1.00] [color=#FF0000]
-      RenderSVGText {text} at (20,20) size 447x58 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,0) size 447x58
+      RenderSVGText {text} at (20,19) size 447x60 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 447x60
           chunk 1 text run 1 at (20.00,70.00) startOffset 0 endOffset 16 width 446.28: "Gradient on fill"
-      RenderSVGText {text} at (20,120) size 430x46 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,0) size 430x46
+      RenderSVGText {text} at (20,118) size 430x49 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 430x49
           chunk 1 text run 1 at (20.00,160.00) startOffset 0 endOffset 18 width 429.88: "Gradient on stroke"
     RenderSVGText {text} at (40,117) size 342x36 contains 1 chunk(s)
       RenderSVGInlineText {#text} at (0,0) size 342x36
diff --git a/LayoutTests/platform/mac/svg/W3C-SVG-1.1/text-text-05-t-expected.txt b/LayoutTests/platform/mac/svg/W3C-SVG-1.1/text-text-05-t-expected.txt
index 7c68607..4ae28b4 100644
--- a/LayoutTests/platform/mac/svg/W3C-SVG-1.1/text-text-05-t-expected.txt
+++ b/LayoutTests/platform/mac/svg/W3C-SVG-1.1/text-text-05-t-expected.txt
@@ -50,8 +50,8 @@ layer at (0,0) size 480x360
               RenderSVGContainer {g} at (146,55) size 8x19
                 RenderSVGPath {line} at (149,55) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                 RenderSVGPath {rect} at (146,66) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-          RenderSVGText {text} at (0,21) size 60x11 contains 1 chunk(s)
-            RenderSVGInlineText {#text} at (0,0) size 60x11
+          RenderSVGText {text} at (0,21) size 60x12 contains 1 chunk(s)
+            RenderSVGInlineText {#text} at (0,0) size 60x12
               chunk 1 text run 1 at (0.00,30.00) startOffset 0 endOffset 4 width 60.00: "1234"
           RenderSVGContainer {use} at (156,85) size 8x19
             RenderSVGContainer {g} at (156,85) size 8x19 [transform={m=((1.00,0.00)(0.00,1.00)) t=(10.00,60.00)}]
@@ -73,8 +73,8 @@ layer at (0,0) size 480x360
               RenderSVGContainer {g} at (186,85) size 8x19
                 RenderSVGPath {line} at (189,85) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                 RenderSVGPath {rect} at (186,96) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-          RenderSVGText {text} at (10,51) size 45x11 contains 1 chunk(s)
-            RenderSVGInlineText {#text} at (0,0) size 45x11
+          RenderSVGText {text} at (10,51) size 45x12 contains 1 chunk(s)
+            RenderSVGInlineText {#text} at (0,0) size 45x12
               chunk 1 text run 1 at (10.00,60.00) startOffset 0 endOffset 1 width 15.00: "1"
               chunk 1 text run 1 at (20.00,60.00) startOffset 0 endOffset 1 width 15.00: "2"
               chunk 1 text run 1 at (30.00,60.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -89,8 +89,8 @@ layer at (0,0) size 480x360
               RenderSVGContainer {g} at (206,115) size 8x19
                 RenderSVGPath {line} at (209,115) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                 RenderSVGPath {rect} at (206,126) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-          RenderSVGText {text} at (10,81) size 95x11 contains 1 chunk(s)
-            RenderSVGInlineText {#text} at (0,0) size 95x11
+          RenderSVGText {text} at (10,81) size 95x12 contains 1 chunk(s)
+            RenderSVGInlineText {#text} at (0,0) size 95x12
               chunk 1 text run 1 at (10.00,90.00) startOffset 0 endOffset 1 width 15.00: "1"
               chunk 1 text run 1 at (60.00,90.00) startOffset 0 endOffset 3 width 45.00: "234"
           RenderSVGContainer {g} at (146,135) size 64x39 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,120.00)}]
@@ -114,8 +114,8 @@ layer at (0,0) size 480x360
                 RenderSVGContainer {g} at (191,155) size 8x19
                   RenderSVGPath {line} at (194,155) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (191,166) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-            RenderSVGText {text} at (0,-19) size 60x31 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 60x31
+            RenderSVGText {text} at (0,-19) size 60x32 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 60x32
                 chunk 1 text run 1 at (0.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                 chunk 1 text run 1 at (15.00,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                 chunk 1 text run 1 at (30.00,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -141,8 +141,8 @@ layer at (0,0) size 480x360
                 RenderSVGContainer {g} at (186,185) size 8x19
                   RenderSVGPath {line} at (189,185) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (186,196) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-            RenderSVGText {text} at (10,-19) size 45x31 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 45x31
+            RenderSVGText {text} at (10,-19) size 45x32 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 45x32
                 chunk 1 text run 1 at (10.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                 chunk 1 text run 1 at (20.00,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                 chunk 1 text run 1 at (30.00,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -168,8 +168,8 @@ layer at (0,0) size 480x360
                 RenderSVGContainer {g} at (196,215) size 8x19
                   RenderSVGPath {line} at (199,215) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (196,226) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-            RenderSVGText {text} at (10,-19) size 55x31 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 55x31
+            RenderSVGText {text} at (10,-19) size 55x32 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 55x32
                 chunk 1 text run 1 at (10.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                 chunk 1 text run 1 at (20.00,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                 chunk 1 text run 1 at (35.00,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -185,8 +185,8 @@ layer at (0,0) size 480x360
                 RenderSVGContainer {g} at (161,240) size 8x19
                   RenderSVGPath {line} at (164,240) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (161,251) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-            RenderSVGText {text} at (0,-19) size 60x26 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 60x26
+            RenderSVGText {text} at (0,-19) size 60x27 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 60x27
                 chunk 1 text run 1 at (0.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                 chunk 1 text run 1 at (15.00,5.00) startOffset 0 endOffset 3 width 45.00: "234"
           RenderSVGContainer {g} at (156,255) size 49x24 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,240.00)}]
@@ -210,8 +210,8 @@ layer at (0,0) size 480x360
                 RenderSVGContainer {g} at (186,260) size 8x19
                   RenderSVGPath {line} at (189,260) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (186,271) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-            RenderSVGText {text} at (10,-19) size 45x16 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 45x16
+            RenderSVGText {text} at (10,-19) size 45x17 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 45x17
                 chunk 1 text run 1 at (10.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                 chunk 1 text run 1 at (20.00,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                 chunk 1 text run 1 at (30.00,-5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -227,8 +227,8 @@ layer at (0,0) size 480x360
                 RenderSVGContainer {g} at (206,290) size 8x19
                   RenderSVGPath {line} at (209,290) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (206,301) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-            RenderSVGText {text} at (10,-19) size 95x16 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 95x16
+            RenderSVGText {text} at (10,-19) size 95x17 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 95x17
                 chunk 1 text run 1 at (10.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                 chunk 1 text run 1 at (60.00,-5.00) startOffset 0 endOffset 3 width 45.00: "234"
       RenderSVGContainer {g} at (214,9) size 119x321 [transform={m=((1.00,0.00)(0.00,1.00)) t=(250.00,40.00)}]
@@ -246,8 +246,8 @@ layer at (0,0) size 480x360
                 RenderSVGContainer {g} at (246,55) size 8x19
                   RenderSVGPath {line} at (249,55) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (246,66) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-              RenderSVGText {text} at (-30,21) size 60x11 contains 1 chunk(s)
-                RenderSVGInlineText {#text} at (0,0) size 60x11
+              RenderSVGText {text} at (-30,21) size 60x12 contains 1 chunk(s)
+                RenderSVGInlineText {#text} at (0,0) size 60x12
                   chunk 1 (middle anchor) text run 1 at (-30.00,30.00) startOffset 0 endOffset 4 width 60.00: "1234"
               RenderSVGContainer {g} at (256,85) size 8x19 [transform={m=((1.00,0.00)(0.00,1.00)) t=(10.00,60.00)}]
                 RenderSVGContainer {g} at (256,85) size 8x19
@@ -265,8 +265,8 @@ layer at (0,0) size 480x360
                 RenderSVGContainer {g} at (286,85) size 8x19
                   RenderSVGPath {line} at (289,85) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (286,96) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-              RenderSVGText {text} at (2,51) size 46x11 contains 1 chunk(s)
-                RenderSVGInlineText {#text} at (0,0) size 46x11
+              RenderSVGText {text} at (2,51) size 46x12 contains 1 chunk(s)
+                RenderSVGInlineText {#text} at (0,0) size 46x12
                   chunk 1 (middle anchor) text run 1 at (2.50,60.00) startOffset 0 endOffset 1 width 15.00: "1"
                   chunk 1 (middle anchor) text run 1 at (12.50,60.00) startOffset 0 endOffset 1 width 15.00: "2"
                   chunk 1 (middle anchor) text run 1 at (22.50,60.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -279,8 +279,8 @@ layer at (0,0) size 480x360
                 RenderSVGContainer {g} at (306,115) size 8x19
                   RenderSVGPath {line} at (309,115) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (306,126) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-              RenderSVGText {text} at (2,81) size 81x11 contains 1 chunk(s)
-                RenderSVGInlineText {#text} at (0,0) size 81x11
+              RenderSVGText {text} at (2,81) size 81x12 contains 1 chunk(s)
+                RenderSVGInlineText {#text} at (0,0) size 81x12
                   chunk 1 (middle anchor) text run 1 at (2.50,90.00) startOffset 0 endOffset 1 width 15.00: "1"
                   chunk 1 (middle anchor) text run 1 at (37.50,90.00) startOffset 0 endOffset 3 width 45.00: "234"
               RenderSVGContainer {g} at (242,135) size 61x39 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,120.00)}]
@@ -300,8 +300,8 @@ layer at (0,0) size 480x360
                   RenderSVGContainer {g} at (291,155) size 8x19
                     RenderSVGPath {line} at (294,155) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (291,166) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (-8,-19) size 61x31 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 61x31
+                RenderSVGText {text} at (-8,-19) size 61x32 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 61x32
                     chunk 1 (middle anchor) text run 1 at (-7.50,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (middle anchor) text run 1 at (7.50,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                     chunk 1 (middle anchor) text run 1 at (22.50,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -323,8 +323,8 @@ layer at (0,0) size 480x360
                   RenderSVGContainer {g} at (286,185) size 8x19
                     RenderSVGPath {line} at (289,185) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (286,196) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (2,-19) size 46x31 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 46x31
+                RenderSVGText {text} at (2,-19) size 46x32 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 46x32
                     chunk 1 (middle anchor) text run 1 at (2.50,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (middle anchor) text run 1 at (12.50,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                     chunk 1 (middle anchor) text run 1 at (22.50,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -346,8 +346,8 @@ layer at (0,0) size 480x360
                   RenderSVGContainer {g} at (296,215) size 8x19
                     RenderSVGPath {line} at (299,215) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (296,226) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (2,-19) size 56x31 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 56x31
+                RenderSVGText {text} at (2,-19) size 56x32 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 56x32
                     chunk 1 (middle anchor) text run 1 at (2.50,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (middle anchor) text run 1 at (12.50,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                     chunk 1 (middle anchor) text run 1 at (27.50,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -361,8 +361,8 @@ layer at (0,0) size 480x360
                   RenderSVGContainer {g} at (261,240) size 8x19
                     RenderSVGPath {line} at (264,240) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (261,251) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (-8,-19) size 46x26 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 46x26
+                RenderSVGText {text} at (-8,-19) size 46x27 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 46x27
                     chunk 1 (middle anchor) text run 1 at (-7.50,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (middle anchor) text run 1 at (-7.50,5.00) startOffset 0 endOffset 3 width 45.00: "234"
               RenderSVGContainer {g} at (252,255) size 46x24 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,240.00)}]
@@ -382,8 +382,8 @@ layer at (0,0) size 480x360
                   RenderSVGContainer {g} at (286,260) size 8x19
                     RenderSVGPath {line} at (289,260) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (286,271) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (2,-19) size 46x16 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 46x16
+                RenderSVGText {text} at (2,-19) size 46x17 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 46x17
                     chunk 1 (middle anchor) text run 1 at (2.50,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (middle anchor) text run 1 at (12.50,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                     chunk 1 (middle anchor) text run 1 at (22.50,-5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -397,8 +397,8 @@ layer at (0,0) size 480x360
                   RenderSVGContainer {g} at (306,290) size 8x19
                     RenderSVGPath {line} at (309,290) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (306,301) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (2,-19) size 81x16 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 81x16
+                RenderSVGText {text} at (2,-19) size 81x17 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 81x17
                     chunk 1 (middle anchor) text run 1 at (2.50,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (middle anchor) text run 1 at (37.50,-5.00) startOffset 0 endOffset 3 width 45.00: "234"
       RenderSVGContainer {g} at (290,9) size 124x321 [transform={m=((1.00,0.00)(0.00,1.00)) t=(350.00,40.00)}]
@@ -416,8 +416,8 @@ layer at (0,0) size 480x360
                 RenderSVGContainer {g} at (346,55) size 8x19
                   RenderSVGPath {line} at (349,55) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (346,66) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-              RenderSVGText {text} at (-60,21) size 60x11 contains 1 chunk(s)
-                RenderSVGInlineText {#text} at (0,0) size 60x11
+              RenderSVGText {text} at (-60,21) size 60x12 contains 1 chunk(s)
+                RenderSVGInlineText {#text} at (0,0) size 60x12
                   chunk 1 (end anchor) text run 1 at (-60.00,30.00) startOffset 0 endOffset 4 width 60.00: "1234"
               RenderSVGContainer {g} at (356,85) size 8x19 [transform={m=((1.00,0.00)(0.00,1.00)) t=(10.00,60.00)}]
                 RenderSVGContainer {g} at (356,85) size 8x19
@@ -435,8 +435,8 @@ layer at (0,0) size 480x360
                 RenderSVGContainer {g} at (386,85) size 8x19
                   RenderSVGPath {line} at (389,85) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (386,96) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-              RenderSVGText {text} at (-5,51) size 45x11 contains 1 chunk(s)
-                RenderSVGInlineText {#text} at (0,0) size 45x11
+              RenderSVGText {text} at (-5,51) size 45x12 contains 1 chunk(s)
+                RenderSVGInlineText {#text} at (0,0) size 45x12
                   chunk 1 (end anchor) text run 1 at (-5.00,60.00) startOffset 0 endOffset 1 width 15.00: "1"
                   chunk 1 (end anchor) text run 1 at (5.00,60.00) startOffset 0 endOffset 1 width 15.00: "2"
                   chunk 1 (end anchor) text run 1 at (15.00,60.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -449,8 +449,8 @@ layer at (0,0) size 480x360
                 RenderSVGContainer {g} at (406,115) size 8x19
                   RenderSVGPath {line} at (409,115) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (406,126) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-              RenderSVGText {text} at (-5,81) size 65x11 contains 1 chunk(s)
-                RenderSVGInlineText {#text} at (0,0) size 65x11
+              RenderSVGText {text} at (-5,81) size 65x12 contains 1 chunk(s)
+                RenderSVGInlineText {#text} at (0,0) size 65x12
                   chunk 1 (end anchor) text run 1 at (-5.00,90.00) startOffset 0 endOffset 1 width 15.00: "1"
                   chunk 1 (end anchor) text run 1 at (15.00,90.00) startOffset 0 endOffset 3 width 45.00: "234"
               RenderSVGContainer {g} at (335,135) size 64x39 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,120.00)}]
@@ -470,8 +470,8 @@ layer at (0,0) size 480x360
                   RenderSVGContainer {g} at (391,155) size 8x19
                     RenderSVGPath {line} at (394,155) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (391,166) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (-15,-19) size 60x31 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 60x31
+                RenderSVGText {text} at (-15,-19) size 60x32 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 60x32
                     chunk 1 (end anchor) text run 1 at (-15.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (end anchor) text run 1 at (0.00,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                     chunk 1 (end anchor) text run 1 at (15.00,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -493,8 +493,8 @@ layer at (0,0) size 480x360
                   RenderSVGContainer {g} at (386,185) size 8x19
                     RenderSVGPath {line} at (389,185) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (386,196) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (-5,-19) size 45x31 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 45x31
+                RenderSVGText {text} at (-5,-19) size 45x32 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 45x32
                     chunk 1 (end anchor) text run 1 at (-5.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (end anchor) text run 1 at (5.00,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                     chunk 1 (end anchor) text run 1 at (15.00,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -516,8 +516,8 @@ layer at (0,0) size 480x360
                   RenderSVGContainer {g} at (396,215) size 8x19
                     RenderSVGPath {line} at (399,215) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (396,226) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (-5,-19) size 55x31 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 55x31
+                RenderSVGText {text} at (-5,-19) size 55x32 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 55x32
                     chunk 1 (end anchor) text run 1 at (-5.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (end anchor) text run 1 at (5.00,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                     chunk 1 (end anchor) text run 1 at (20.00,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -531,8 +531,8 @@ layer at (0,0) size 480x360
                   RenderSVGContainer {g} at (361,240) size 8x19
                     RenderSVGPath {line} at (364,240) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (361,251) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (-30,-19) size 45x26 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (15,0) size 45x26
+                RenderSVGText {text} at (-30,-19) size 45x27 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (15,0) size 45x27
                     chunk 1 (end anchor) text run 1 at (-15.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (end anchor) text run 1 at (-30.00,5.00) startOffset 0 endOffset 3 width 45.00: "234"
               RenderSVGContainer {g} at (345,255) size 49x24 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,240.00)}]
@@ -552,8 +552,8 @@ layer at (0,0) size 480x360
                   RenderSVGContainer {g} at (386,260) size 8x19
                     RenderSVGPath {line} at (389,260) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (386,271) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (-5,-19) size 45x16 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 45x16
+                RenderSVGText {text} at (-5,-19) size 45x17 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 45x17
                     chunk 1 (end anchor) text run 1 at (-5.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (end anchor) text run 1 at (5.00,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                     chunk 1 (end anchor) text run 1 at (15.00,-5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -567,8 +567,8 @@ layer at (0,0) size 480x360
                   RenderSVGContainer {g} at (406,290) size 8x19
                     RenderSVGPath {line} at (409,290) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (406,301) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (-5,-19) size 65x16 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 65x16
+                RenderSVGText {text} at (-5,-19) size 65x17 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 65x17
                     chunk 1 (end anchor) text run 1 at (-5.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (end anchor) text run 1 at (15.00,-5.00) startOffset 0 endOffset 3 width 45.00: "234"
     RenderSVGText {text} at (10,314) size 264x46 contains 1 chunk(s)
diff --git a/LayoutTests/platform/mac/svg/W3C-SVG-1.1/text-text-06-t-expected.txt b/LayoutTests/platform/mac/svg/W3C-SVG-1.1/text-text-06-t-expected.txt
index b071cc8..9bd025d 100644
--- a/LayoutTests/platform/mac/svg/W3C-SVG-1.1/text-text-06-t-expected.txt
+++ b/LayoutTests/platform/mac/svg/W3C-SVG-1.1/text-text-06-t-expected.txt
@@ -50,8 +50,8 @@ layer at (0,0) size 480x360
               RenderSVGContainer {g} at (246,55) size 8x19
                 RenderSVGPath {line} at (249,55) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                 RenderSVGPath {rect} at (246,66) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-          RenderSVGText {text} at (10,-9) size 135x11 contains 1 chunk(s)
-            RenderSVGInlineText {#text} at (0,0) size 135x11
+          RenderSVGText {text} at (10,-9) size 135x12 contains 1 chunk(s)
+            RenderSVGInlineText {#text} at (0,0) size 135x12
               chunk 1 text run 1 at (10.00,0.00) startOffset 0 endOffset 2 width 15.00: "fi"
               chunk 1 text run 1 at (40.00,0.00) startOffset 0 endOffset 1 width 15.00: "1"
               chunk 1 text run 1 at (70.00,0.00) startOffset 0 endOffset 1 width 15.00: "2"
@@ -88,8 +88,8 @@ layer at (0,0) size 480x360
               RenderSVGContainer {g} at (176,125) size 8x19
                 RenderSVGPath {line} at (179,125) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                 RenderSVGPath {rect} at (176,136) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-          RenderSVGText {text} at (0,-19) size 75x51 contains 1 chunk(s)
-            RenderSVGInlineText {#text} at (0,0) size 75x51
+          RenderSVGText {text} at (0,-19) size 75x52 contains 1 chunk(s)
+            RenderSVGInlineText {#text} at (0,0) size 75x52
               chunk 1 text run 1 at (0.00,-10.00) startOffset 0 endOffset 2 width 15.00: "fi"
               chunk 1 text run 1 at (15.00,0.00) startOffset 0 endOffset 1 width 15.00: "1"
               chunk 1 text run 1 at (30.00,10.00) startOffset 0 endOffset 1 width 15.00: "2"
@@ -126,8 +126,8 @@ layer at (0,0) size 480x360
               RenderSVGContainer {g} at (246,225) size 8x19
                 RenderSVGPath {line} at (249,225) size 2x15 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                 RenderSVGPath {rect} at (246,236) size 8x8 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-          RenderSVGText {text} at (10,-19) size 135x51 contains 1 chunk(s)
-            RenderSVGInlineText {#text} at (0,0) size 135x51
+          RenderSVGText {text} at (10,-19) size 135x52 contains 1 chunk(s)
+            RenderSVGInlineText {#text} at (0,0) size 135x52
               chunk 1 text run 1 at (10.00,-10.00) startOffset 0 endOffset 2 width 15.00: "fi"
               chunk 1 text run 1 at (40.00,0.00) startOffset 0 endOffset 1 width 15.00: "1"
               chunk 1 text run 1 at (70.00,10.00) startOffset 0 endOffset 1 width 15.00: "2"
diff --git a/LayoutTests/platform/mac/svg/batik/text/textEffect-expected.txt b/LayoutTests/platform/mac/svg/batik/text/textEffect-expected.txt
index a58f5e7..c32542c 100644
--- a/LayoutTests/platform/mac/svg/batik/text/textEffect-expected.txt
+++ b/LayoutTests/platform/mac/svg/batik/text/textEffect-expected.txt
@@ -24,23 +24,23 @@ layer at (0,0) size 450x500
       RenderSVGText {text} at (44,111) size 152x60 contains 1 chunk(s)
         RenderSVGInlineText {#text} at (0,0) size 152x60
           chunk 1 (middle anchor) text run 1 at (44.00,160.00) startOffset 0 endOffset 5 width 152.00: "BATIK"
-      RenderSVGText {text} at (252,111) size 156x60 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,0) size 156x60
+      RenderSVGText {text} at (252,110) size 156x61 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 156x61
           chunk 1 (middle anchor) text run 1 at (252.94,160.00) startOffset 0 endOffset 5 width 154.11: "BATIK"
       RenderSVGText {text} at (44,211) size 152x60 contains 1 chunk(s)
         RenderSVGInlineText {#text} at (0,0) size 152x60
           chunk 1 (middle anchor) text run 1 at (44.00,260.00) startOffset 0 endOffset 5 width 152.00: "BATIK"
-      RenderSVGText {text} at (252,211) size 156x60 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,0) size 156x60
+      RenderSVGText {text} at (252,210) size 156x61 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 156x61
           chunk 1 (middle anchor) text run 1 at (252.94,260.00) startOffset 0 endOffset 5 width 154.11: "BATIK"
       RenderSVGText {text} at (44,311) size 152x60 contains 1 chunk(s)
         [filter="dropShadow"] RenderSVGResourceFilter {filter} at (28.80,305) size 182.40x72
         RenderSVGInlineText {#text} at (0,0) size 152x60
           [filter="dropShadow"] RenderSVGResourceFilter {filter} at (0,0) size 0x0
           chunk 1 (middle anchor) text run 1 at (44.00,360.00) startOffset 0 endOffset 5 width 152.00: "BATIK"
-      RenderSVGText {text} at (252,311) size 156x60 contains 1 chunk(s)
-        [filter="dropShadow"] RenderSVGResourceFilter {filter} at (236.40,305) size 187.20x72
-        RenderSVGInlineText {#text} at (0,0) size 156x60
+      RenderSVGText {text} at (252,310) size 156x61 contains 1 chunk(s)
+        [filter="dropShadow"] RenderSVGResourceFilter {filter} at (236.40,303.90) size 187.20x73.20
+        RenderSVGInlineText {#text} at (0,0) size 156x61
           [filter="dropShadow"] RenderSVGResourceFilter {filter} at (0,0) size 0x0
           chunk 1 (middle anchor) text run 1 at (252.94,360.00) startOffset 0 endOffset 5 width 154.11: "BATIK"
       RenderSVGText {text} at (87,389) size 66x14 contains 1 chunk(s)
diff --git a/LayoutTests/platform/mac/svg/batik/text/textEffect3-expected.txt b/LayoutTests/platform/mac/svg/batik/text/textEffect3-expected.txt
index 7111732..234f182 100644
--- a/LayoutTests/platform/mac/svg/batik/text/textEffect3-expected.txt
+++ b/LayoutTests/platform/mac/svg/batik/text/textEffect3-expected.txt
@@ -1,8 +1,8 @@
 layer at (0,0) size 800x600
   RenderView at (0,0) size 800x600
 layer at (0,0) size 450x500
-  RenderSVGRoot {svg} at (39,16) size 387x387
-    RenderSVGContainer {g} at (39,16) size 387x387
+  RenderSVGRoot {svg} at (39,16) size 388x387
+    RenderSVGContainer {g} at (39,16) size 388x387
       RenderSVGText {text} at (99,16) size 252x17 contains 1 chunk(s)
         RenderSVGInlineText {#text} at (0,0) size 252x17
           chunk 1 (middle anchor) text run 1 at (99.50,30.00) startOffset 0 endOffset 37 width 251.00: "Gradient and filter on text and tspan"
@@ -36,19 +36,19 @@ layer at (0,0) size 450x500
           RenderSVGInlineText {#text} at (92,2) size 55x70
             chunk 1 (middle anchor) text run 1 at (150.50,140.00) startOffset 0 endOffset 1 width 35.00: "K"
         RenderSVGInlineText {#text} at (0,0) size 0x0
-      RenderSVGText {text} at (263,91) size 148x80 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,20) size 37x60
+      RenderSVGText {text} at (263,90) size 149x81 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,20) size 37x61
           chunk 1 (middle anchor) text run 1 at (263.69,160.00) startOffset 0 endOffset 1 width 35.57: "B"
-        RenderSVGTSpan {tspan} at (0,0) size 19x30
-          RenderSVGInlineText {#text} at (36,24) size 19x30
+        RenderSVGTSpan {tspan} at (0,0) size 19x31
+          RenderSVGInlineText {#text} at (36,25) size 19x31
             chunk 1 (middle anchor) text run 1 at (299.26,140.00) startOffset 0 endOffset 1 width 17.79: "A"
-        RenderSVGInlineText {#text} at (54,0) size 33x60
+        RenderSVGInlineText {#text} at (54,0) size 33x61
           chunk 1 (middle anchor) text run 1 at (317.05,140.00) startOffset 0 endOffset 1 width 32.58: "T"
         RenderSVGTSpan {tspan} at (0,0) size 12x46
-          RenderSVGInlineText {#text} at (86,11) size 12x46
+          RenderSVGInlineText {#text} at (86,12) size 12x46
             chunk 1 (middle anchor) text run 1 at (349.63,140.00) startOffset 0 endOffset 1 width 11.11: "I"
-        RenderSVGTSpan {tspan} at (0,0) size 55x70
-          RenderSVGInlineText {#text} at (93,2) size 55x70
+        RenderSVGTSpan {tspan} at (0,0) size 56x70
+          RenderSVGInlineText {#text} at (93,3) size 56x70
             chunk 1 (middle anchor) text run 1 at (360.74,140.00) startOffset 0 endOffset 1 width 35.57: "K"
         RenderSVGInlineText {#text} at (0,0) size 0x0
       RenderSVGText {text} at (54,191) size 147x80 contains 1 chunk(s)
@@ -66,19 +66,19 @@ layer at (0,0) size 450x500
           RenderSVGInlineText {#text} at (92,2) size 55x70
             chunk 1 (middle anchor) text run 1 at (150.50,240.00) startOffset 0 endOffset 1 width 35.00: "K"
         RenderSVGInlineText {#text} at (0,0) size 0x0
-      RenderSVGText {text} at (263,191) size 148x80 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,20) size 37x60
+      RenderSVGText {text} at (263,190) size 149x81 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,20) size 37x61
           chunk 1 (middle anchor) text run 1 at (263.69,260.00) startOffset 0 endOffset 1 width 35.57: "B"
-        RenderSVGTSpan {tspan} at (0,0) size 19x30
-          RenderSVGInlineText {#text} at (36,24) size 19x30
+        RenderSVGTSpan {tspan} at (0,0) size 19x31
+          RenderSVGInlineText {#text} at (36,25) size 19x31
             chunk 1 (middle anchor) text run 1 at (299.26,240.00) startOffset 0 endOffset 1 width 17.79: "A"
-        RenderSVGInlineText {#text} at (54,0) size 33x60
+        RenderSVGInlineText {#text} at (54,0) size 33x61
           chunk 1 (middle anchor) text run 1 at (317.05,240.00) startOffset 0 endOffset 1 width 32.58: "T"
         RenderSVGTSpan {tspan} at (0,0) size 12x46
-          RenderSVGInlineText {#text} at (86,11) size 12x46
+          RenderSVGInlineText {#text} at (86,12) size 12x46
             chunk 1 (middle anchor) text run 1 at (349.63,240.00) startOffset 0 endOffset 1 width 11.11: "I"
-        RenderSVGTSpan {tspan} at (0,0) size 55x70
-          RenderSVGInlineText {#text} at (93,2) size 55x70
+        RenderSVGTSpan {tspan} at (0,0) size 56x70
+          RenderSVGInlineText {#text} at (93,3) size 56x70
             chunk 1 (middle anchor) text run 1 at (360.74,240.00) startOffset 0 endOffset 1 width 35.57: "K"
         RenderSVGInlineText {#text} at (0,0) size 0x0
       RenderSVGText {text} at (54,291) size 147x80 contains 1 chunk(s)
@@ -100,22 +100,22 @@ layer at (0,0) size 450x500
             chunk 1 (middle anchor) text run 1 at (150.50,340.00) startOffset 0 endOffset 1 width 35.00: "K"
         RenderSVGInlineText {#text} at (0,0) size 0x0
           [filter="dropShadow"] RenderSVGResourceFilter {filter} at (0,0) size 0x0
-      RenderSVGText {text} at (263,291) size 148x80 contains 1 chunk(s)
-        [filter="dropShadow"] RenderSVGResourceFilter {filter} at (248.20,283) size 177.60x96
-        RenderSVGInlineText {#text} at (0,20) size 37x60
+      RenderSVGText {text} at (263,290) size 149x81 contains 1 chunk(s)
+        [filter="dropShadow"] RenderSVGResourceFilter {filter} at (248.10,281.90) size 178.80x97.20
+        RenderSVGInlineText {#text} at (0,20) size 37x61
           [filter="dropShadow"] RenderSVGResourceFilter {filter} at (0,0) size 0x0
           chunk 1 (middle anchor) text run 1 at (263.69,360.00) startOffset 0 endOffset 1 width 35.57: "B"
-        RenderSVGTSpan {tspan} at (0,0) size 19x30
-          RenderSVGInlineText {#text} at (36,24) size 19x30
+        RenderSVGTSpan {tspan} at (0,0) size 19x31
+          RenderSVGInlineText {#text} at (36,25) size 19x31
             chunk 1 (middle anchor) text run 1 at (299.26,340.00) startOffset 0 endOffset 1 width 17.79: "A"
-        RenderSVGInlineText {#text} at (54,0) size 33x60
+        RenderSVGInlineText {#text} at (54,0) size 33x61
           [filter="dropShadow"] RenderSVGResourceFilter {filter} at (0,0) size 0x0
           chunk 1 (middle anchor) text run 1 at (317.05,340.00) startOffset 0 endOffset 1 width 32.58: "T"
         RenderSVGTSpan {tspan} at (0,0) size 12x46
-          RenderSVGInlineText {#text} at (86,11) size 12x46
+          RenderSVGInlineText {#text} at (86,12) size 12x46
             chunk 1 (middle anchor) text run 1 at (349.63,340.00) startOffset 0 endOffset 1 width 11.11: "I"
-        RenderSVGTSpan {tspan} at (0,0) size 55x70
-          RenderSVGInlineText {#text} at (93,2) size 55x70
+        RenderSVGTSpan {tspan} at (0,0) size 56x70
+          RenderSVGInlineText {#text} at (93,3) size 56x70
             chunk 1 (middle anchor) text run 1 at (360.74,340.00) startOffset 0 endOffset 1 width 35.57: "K"
         RenderSVGInlineText {#text} at (0,0) size 0x0
           [filter="dropShadow"] RenderSVGResourceFilter {filter} at (0,0) size 0x0
diff --git a/LayoutTests/platform/mac/svg/batik/text/textPosition2-expected.png b/LayoutTests/platform/mac/svg/batik/text/textPosition2-expected.png
index 8dcada5..947e94c 100644
Binary files a/LayoutTests/platform/mac/svg/batik/text/textPosition2-expected.png and b/LayoutTests/platform/mac/svg/batik/text/textPosition2-expected.png differ
diff --git a/LayoutTests/platform/mac/svg/batik/text/textPosition2-expected.txt b/LayoutTests/platform/mac/svg/batik/text/textPosition2-expected.txt
index af3eee5..3a61d3b 100644
--- a/LayoutTests/platform/mac/svg/batik/text/textPosition2-expected.txt
+++ b/LayoutTests/platform/mac/svg/batik/text/textPosition2-expected.txt
@@ -6,15 +6,15 @@ layer at (0,0) size 450x500
     RenderSVGText {text} at (172,16) size 106x17 contains 1 chunk(s)
       RenderSVGInlineText {#text} at (0,0) size 106x17
         chunk 1 (middle anchor) text run 1 at (172.00,30.00) startOffset 0 endOffset 15 width 106.00: "Text Position 2"
-    RenderSVGContainer {g} at (50,58) size 399x295
-      RenderSVGText {text} at (50,58) size 54x27 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,0) size 54x27
+    RenderSVGContainer {g} at (50,57) size 399x296
+      RenderSVGText {text} at (50,57) size 54x28 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 54x28
           chunk 1 text run 1 at (50.00,80.00) startOffset 0 endOffset 5 width 53.36: "Batik"
       RenderSVGText {text} at (50,91) size 103x11 contains 1 chunk(s)
         RenderSVGInlineText {#text} at (0,0) size 103x11
           chunk 1 text run 1 at (50.00,100.00) startOffset 0 endOffset 21 width 103.00: "<text x=\"100\" y=\"80\">"
-      RenderSVGText {text} at (240,58) size 134x27 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,0) size 134x27
+      RenderSVGText {text} at (240,57) size 134x28 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 134x28
           chunk 1 text run 1 at (240.00,80.00) startOffset 0 endOffset 1 width 16.01: "B"
           chunk 1 text run 2 at (276.01,80.00) startOffset 1 endOffset 2 width 13.35: "a"
           chunk 1 text run 3 at (309.36,80.00) startOffset 2 endOffset 3 width 6.67: "t"
@@ -23,8 +23,8 @@ layer at (0,0) size 450x500
       RenderSVGText {text} at (240,91) size 194x11 contains 1 chunk(s)
         RenderSVGInlineText {#text} at (0,0) size 194x11
           chunk 1 text run 1 at (240.00,100.00) startOffset 0 endOffset 41 width 194.00: "<text x=\"240\" y=\"80\" letter-spacing=\"20\">"
-      RenderSVGText {text} at (50,118) size 92x27 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,0) size 92x27
+      RenderSVGText {text} at (50,117) size 92x28 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 92x28
           chunk 1 text run 1 at (50.00,140.00) startOffset 0 endOffset 1 width 16.01: "B"
           chunk 1 text run 1 at (70.00,140.00) startOffset 0 endOffset 1 width 13.35: "a"
           chunk 1 text run 1 at (90.00,140.00) startOffset 0 endOffset 1 width 6.67: "t"
@@ -33,8 +33,8 @@ layer at (0,0) size 450x500
       RenderSVGText {text} at (50,151) size 175x11 contains 1 chunk(s)
         RenderSVGInlineText {#text} at (0,0) size 175x11
           chunk 1 text run 1 at (50.00,160.00) startOffset 0 endOffset 35 width 175.00: "<text x=\"50 70 90 110 130\" y=\"140\">"
-      RenderSVGText {text} at (240,118) size 134x27 contains 1 chunk(s)
-        RenderSVGInlineText {#text} at (0,0) size 134x27
+      RenderSVGText {text} at (240,117) size 134x28 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 134x28
           chunk 1 text run 1 at (240.00,140.00) startOffset 0 endOffset 1 width 16.01: "B"
           chunk 1 text run 2 at (276.01,140.00) startOffset 1 endOffset 2 width 13.35: "a"
           chunk 1 text run 3 at (309.36,140.00) startOffset 2 endOffset 3 width 6.67: "t"
@@ -43,16 +43,16 @@ layer at (0,0) size 450x500
       RenderSVGText {text} at (240,151) size 175x11 contains 1 chunk(s)
         RenderSVGInlineText {#text} at (0,0) size 175x11
           chunk 1 text run 1 at (240.00,160.00) startOffset 0 endOffset 35 width 175.00: "<text dx=\"240 20 20 20 20\" y=\"140\">"
-      RenderSVGText {text} at (50,178) size 54x27 contains 1 chunk(s)
-        RenderSVGTSpan {tspan} at (0,0) size 54x27
-          RenderSVGInlineText {#text} at (0,0) size 54x27
+      RenderSVGText {text} at (50,177) size 54x28 contains 1 chunk(s)
+        RenderSVGTSpan {tspan} at (0,0) size 54x28
+          RenderSVGInlineText {#text} at (0,0) size 54x28
             chunk 1 text run 1 at (50.00,200.00) startOffset 0 endOffset 5 width 53.36: "Batik"
       RenderSVGText {text} at (50,211) size 112x11 contains 1 chunk(s)
         RenderSVGInlineText {#text} at (0,0) size 112x11
           chunk 1 text run 1 at (50.00,220.00) startOffset 0 endOffset 22 width 112.00: "<tspan x=\"50\" y=\"200\">"
-      RenderSVGText {text} at (240,178) size 134x27 contains 1 chunk(s)
-        RenderSVGTSpan {tspan} at (0,0) size 134x27
-          RenderSVGInlineText {#text} at (0,0) size 134x27
+      RenderSVGText {text} at (240,177) size 134x28 contains 1 chunk(s)
+        RenderSVGTSpan {tspan} at (0,0) size 134x28
+          RenderSVGInlineText {#text} at (0,0) size 134x28
             chunk 1 text run 1 at (240.00,200.00) startOffset 0 endOffset 1 width 16.01: "B"
             chunk 1 text run 2 at (276.01,200.00) startOffset 1 endOffset 2 width 13.35: "a"
             chunk 1 text run 3 at (309.36,200.00) startOffset 2 endOffset 3 width 6.67: "t"
@@ -62,9 +62,9 @@ layer at (0,0) size 450x500
         RenderSVGTSpan {tspan} at (0,0) size 209x11
           RenderSVGInlineText {#text} at (0,0) size 209x11
             chunk 1 text run 1 at (240.00,220.00) startOffset 0 endOffset 43 width 209.00: "<tspan x=\"240\" y=\"200\" letter-spacing=\"20\">"
-      RenderSVGText {text} at (50,238) size 92x27 contains 1 chunk(s)
-        RenderSVGTSpan {tspan} at (0,0) size 92x27
-          RenderSVGInlineText {#text} at (0,0) size 92x27
+      RenderSVGText {text} at (50,237) size 92x28 contains 1 chunk(s)
+        RenderSVGTSpan {tspan} at (0,0) size 92x28
+          RenderSVGInlineText {#text} at (0,0) size 92x28
             chunk 1 text run 1 at (50.00,260.00) startOffset 0 endOffset 1 width 16.01: "B"
             chunk 1 text run 1 at (70.00,260.00) startOffset 0 endOffset 1 width 13.35: "a"
             chunk 1 text run 1 at (90.00,260.00) startOffset 0 endOffset 1 width 6.67: "t"
@@ -73,9 +73,9 @@ layer at (0,0) size 450x500
       RenderSVGText {text} at (50,271) size 184x11 contains 1 chunk(s)
         RenderSVGInlineText {#text} at (0,0) size 184x11
           chunk 1 text run 1 at (50.00,280.00) startOffset 0 endOffset 36 width 184.00: "<tspan x=\"50 70 90 110 130\" y=\"260\">"
-      RenderSVGText {text} at (240,238) size 134x27 contains 1 chunk(s)
-        RenderSVGTSpan {tspan} at (0,0) size 134x27
-          RenderSVGInlineText {#text} at (0,0) size 134x27
+      RenderSVGText {text} at (240,237) size 134x28 contains 1 chunk(s)
+        RenderSVGTSpan {tspan} at (0,0) size 134x28
+          RenderSVGInlineText {#text} at (0,0) size 134x28
             chunk 1 text run 1 at (240.00,260.00) startOffset 0 endOffset 1 width 16.01: "B"
             chunk 1 text run 2 at (276.01,260.00) startOffset 1 endOffset 2 width 13.35: "a"
             chunk 1 text run 3 at (309.36,260.00) startOffset 2 endOffset 3 width 6.67: "t"
@@ -84,9 +84,9 @@ layer at (0,0) size 450x500
       RenderSVGText {text} at (240,271) size 184x11 contains 1 chunk(s)
         RenderSVGInlineText {#text} at (0,0) size 184x11
           chunk 1 text run 1 at (240.00,280.00) startOffset 0 endOffset 36 width 184.00: "<tspan dx=\"240 20 20 20 20\" y=\"260\">"
-      RenderSVGText {text} at (50,298) size 92x27 contains 1 chunk(s)
-        RenderSVGTSpan {tspan} at (0,0) size 92x27
-          RenderSVGInlineText {#text} at (0,0) size 92x27
+      RenderSVGText {text} at (50,297) size 92x28 contains 1 chunk(s)
+        RenderSVGTSpan {tspan} at (0,0) size 92x28
+          RenderSVGInlineText {#text} at (0,0) size 92x28
             chunk 1 text run 1 at (50.00,320.00) startOffset 0 endOffset 1 width 16.01: "B"
             chunk 1 text run 1 at (70.00,320.00) startOffset 0 endOffset 1 width 13.35: "a"
             chunk 1 text run 1 at (90.00,320.00) startOffset 0 endOffset 1 width 6.67: "t"
@@ -98,9 +98,9 @@ layer at (0,0) size 450x500
         RenderSVGTSpan {tspan} at (0,0) size 137x11
           RenderSVGInlineText {#text} at (33,11) size 137x11
             chunk 1 text run 1 at (83.00,351.00) startOffset 0 endOffset 27 width 137.00: "dx=\"0 10 20 30 40\" y=\"320\">"
-      RenderSVGText {text} at (240,298) size 134x27 contains 1 chunk(s)
-        RenderSVGTSpan {tspan} at (0,0) size 134x27
-          RenderSVGInlineText {#text} at (0,0) size 134x27
+      RenderSVGText {text} at (240,297) size 134x28 contains 1 chunk(s)
+        RenderSVGTSpan {tspan} at (0,0) size 134x28
+          RenderSVGInlineText {#text} at (0,0) size 134x28
             chunk 1 text run 1 at (240.00,320.00) startOffset 0 endOffset 1 width 16.01: "B"
             chunk 1 text run 2 at (276.01,320.00) startOffset 1 endOffset 2 width 13.35: "a"
             chunk 1 text run 3 at (309.36,320.00) startOffset 2 endOffset 3 width 6.67: "t"
diff --git a/LayoutTests/platform/mac/svg/custom/svg-fonts-in-html-expected.txt b/LayoutTests/platform/mac/svg/custom/svg-fonts-in-html-expected.txt
index 2f3b446..744f67d 100644
--- a/LayoutTests/platform/mac/svg/custom/svg-fonts-in-html-expected.txt
+++ b/LayoutTests/platform/mac/svg/custom/svg-fonts-in-html-expected.txt
@@ -25,16 +25,16 @@ layer at (173,47) size 453x188
       RenderText {#text} at (63,-1) size 340x190
         text run at (63,-1) width 327: "CSS ZEN"
         text run at (56,93) width 340: "GARDEN"
-layer at (173,118) size 453x20
-  RenderBlock (positioned) {H2} at (0,86) size 453x20 [color=#EEFF00]
+layer at (173,118) size 453x21
+  RenderBlock (positioned) {H2} at (0,86) size 453x21 [color=#EEFF00]
     RenderInline {SPAN} at (0,0) size 149x19
-      RenderText {#text} at (152,0) size 88x19
-        text run at (152,0) width 88: "The Beauty of "
+      RenderText {#text} at (152,1) size 88x19
+        text run at (152,1) width 88: "The Beauty of "
       RenderInline {ACRONYM} at (0,0) size 21x19
-        RenderText {#text} at (240,0) size 21x19
-          text run at (240,0) width 21: "CSS"
-      RenderText {#text} at (261,0) size 40x19
-        text run at (261,0) width 40: " Design"
+        RenderText {#text} at (240,1) size 21x19
+          text run at (240,1) width 21: "CSS"
+      RenderText {#text} at (261,1) size 40x19
+        text run at (261,1) width 40: " Design"
 layer at (173,351) size 453x134
   RenderBlock (positioned) {DIV} at (0,319) size 453x134
     RenderInline {P} at (0,0) size 431x29
diff --git a/LayoutTests/platform/mac/svg/custom/svg-fonts-with-no-element-reference-expected.txt b/LayoutTests/platform/mac/svg/custom/svg-fonts-with-no-element-reference-expected.txt
index c775497..fab7da1 100644
--- a/LayoutTests/platform/mac/svg/custom/svg-fonts-with-no-element-reference-expected.txt
+++ b/LayoutTests/platform/mac/svg/custom/svg-fonts-with-no-element-reference-expected.txt
@@ -1,11 +1,11 @@
 layer at (0,0) size 800x600
   RenderView at (0,0) size 800x600
-layer at (0,0) size 800x94
-  RenderBlock {HTML} at (0,0) size 800x94
-    RenderBody {BODY} at (8,18) size 784x58
-      RenderBlock {P} at (0,0) size 784x20
-        RenderText {#text} at (0,0) size 278x19
-          text run at (0,0) width 278: "This text should be rendered with a first font."
-      RenderBlock {P} at (0,38) size 784x20
-        RenderText {#text} at (0,0) size 287x19
-          text run at (0,0) width 287: "This text should be rendered with a second font."
+layer at (0,0) size 800x96
+  RenderBlock {HTML} at (0,0) size 800x96
+    RenderBody {BODY} at (8,18) size 784x60
+      RenderBlock {P} at (0,0) size 784x21
+        RenderText {#text} at (0,1) size 278x19
+          text run at (0,1) width 278: "This text should be rendered with a first font."
+      RenderBlock {P} at (0,39) size 784x21
+        RenderText {#text} at (0,1) size 287x19
+          text run at (0,1) width 287: "This text should be rendered with a second font."
diff --git a/LayoutTests/platform/mac/svg/custom/svg-fonts-without-missing-glyph-expected.txt b/LayoutTests/platform/mac/svg/custom/svg-fonts-without-missing-glyph-expected.txt
index fc3bb1f..3c6ef9e 100644
--- a/LayoutTests/platform/mac/svg/custom/svg-fonts-without-missing-glyph-expected.txt
+++ b/LayoutTests/platform/mac/svg/custom/svg-fonts-without-missing-glyph-expected.txt
@@ -1,8 +1,8 @@
 layer at (0,0) size 800x600
   RenderView at (0,0) size 800x600
-layer at (0,0) size 800x273
-  RenderBlock {html} at (0,0) size 800x273
-    RenderBody {body} at (8,21) size 784x236
+layer at (0,0) size 800x283
+  RenderBlock {html} at (0,0) size 800x283
+    RenderBody {body} at (8,21) size 784x246
       RenderBlock {h1} at (0,0) size 784x37
         RenderText {#text} at (0,0) size 115x37
           text run at (0,0) width 115: "Test for "
@@ -12,18 +12,18 @@ layer at (0,0) size 800x273
       RenderBlock {p} at (0,58) size 784x18
         RenderText {#text} at (0,0) size 506x18
           text run at (0,0) width 506: "Following text should be rendered as usual. Only \"A\" has a glyph in SVG Font."
-      RenderBlock {p} at (0,92) size 784x16
-        RenderText {#text} at (0,0) size 37x15
-          text run at (0,0) width 37: "XXA"
-      RenderBlock {p} at (0,124) size 784x16
-        RenderText {#text} at (0,0) size 37x15
-          text run at (0,0) width 37: "XAX"
-      RenderBlock {p} at (0,156) size 784x16
-        RenderText {#text} at (0,0) size 37x15
-          text run at (0,0) width 37: "AXX"
-      RenderBlock {p} at (0,188) size 784x16
-        RenderText {#text} at (0,0) size 36x15
-          text run at (0,0) width 36: "XXX"
-      RenderBlock {p} at (0,220) size 784x16
-        RenderText {#text} at (0,0) size 38x15
-          text run at (0,0) width 38: "AAA"
+      RenderBlock {p} at (0,92) size 784x18
+        RenderText {#text} at (0,1) size 37x16
+          text run at (0,1) width 37: "XXA"
+      RenderBlock {p} at (0,126) size 784x18
+        RenderText {#text} at (0,1) size 37x16
+          text run at (0,1) width 37: "XAX"
+      RenderBlock {p} at (0,160) size 784x18
+        RenderText {#text} at (0,1) size 37x16
+          text run at (0,1) width 37: "AXX"
+      RenderBlock {p} at (0,194) size 784x18
+        RenderText {#text} at (0,1) size 36x16
+          text run at (0,1) width 36: "XXX"
+      RenderBlock {p} at (0,228) size 784x18
+        RenderText {#text} at (0,1) size 38x16
+          text run at (0,1) width 38: "AAA"
diff --git a/LayoutTests/platform/mac/svg/text/text-text-05-t-expected.txt b/LayoutTests/platform/mac/svg/text/text-text-05-t-expected.txt
index 34ec291..df98b49 100644
--- a/LayoutTests/platform/mac/svg/text/text-text-05-t-expected.txt
+++ b/LayoutTests/platform/mac/svg/text/text-text-05-t-expected.txt
@@ -50,8 +50,8 @@ layer at (0,0) size 800x600
               RenderSVGContainer {g} at (243,91) size 14x33
                 RenderSVGPath {line} at (248,91) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                 RenderSVGPath {rect} at (243,110) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-          RenderSVGText {text} at (0,21) size 60x11 contains 1 chunk(s)
-            RenderSVGInlineText {#text} at (0,0) size 60x11
+          RenderSVGText {text} at (0,21) size 60x12 contains 1 chunk(s)
+            RenderSVGInlineText {#text} at (0,0) size 60x12
               chunk 1 text run 1 at (0.00,30.00) startOffset 0 endOffset 4 width 60.00: "1234"
           RenderSVGContainer {use} at (260,141) size 14x33
             RenderSVGContainer {g} at (260,141) size 14x33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(10.00,60.00)}]
@@ -73,8 +73,8 @@ layer at (0,0) size 800x600
               RenderSVGContainer {g} at (310,141) size 14x33
                 RenderSVGPath {line} at (315,141) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                 RenderSVGPath {rect} at (310,160) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-          RenderSVGText {text} at (10,51) size 45x11 contains 1 chunk(s)
-            RenderSVGInlineText {#text} at (0,0) size 45x11
+          RenderSVGText {text} at (10,51) size 45x12 contains 1 chunk(s)
+            RenderSVGInlineText {#text} at (0,0) size 45x12
               chunk 1 text run 1 at (10.00,60.00) startOffset 0 endOffset 1 width 15.00: "1"
               chunk 1 text run 1 at (20.00,60.00) startOffset 0 endOffset 1 width 15.00: "2"
               chunk 1 text run 1 at (30.00,60.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -89,8 +89,8 @@ layer at (0,0) size 800x600
               RenderSVGContainer {g} at (343,191) size 14x33
                 RenderSVGPath {line} at (348,191) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                 RenderSVGPath {rect} at (343,210) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-          RenderSVGText {text} at (10,81) size 95x11 contains 1 chunk(s)
-            RenderSVGInlineText {#text} at (0,0) size 95x11
+          RenderSVGText {text} at (10,81) size 95x12 contains 1 chunk(s)
+            RenderSVGInlineText {#text} at (0,0) size 95x12
               chunk 1 text run 1 at (10.00,90.00) startOffset 0 endOffset 1 width 15.00: "1"
               chunk 1 text run 1 at (60.00,90.00) startOffset 0 endOffset 3 width 45.00: "234"
           RenderSVGContainer {g} at (243,225) size 107x65 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,120.00)}]
@@ -114,8 +114,8 @@ layer at (0,0) size 800x600
                 RenderSVGContainer {g} at (318,258) size 14x32
                   RenderSVGPath {line} at (323,258) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (318,276) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-            RenderSVGText {text} at (0,-19) size 60x31 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 60x31
+            RenderSVGText {text} at (0,-19) size 60x32 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 60x32
                 chunk 1 text run 1 at (0.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                 chunk 1 text run 1 at (15.00,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                 chunk 1 text run 1 at (30.00,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -141,8 +141,8 @@ layer at (0,0) size 800x600
                 RenderSVGContainer {g} at (310,308) size 14x32
                   RenderSVGPath {line} at (315,308) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (310,326) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-            RenderSVGText {text} at (10,-19) size 45x31 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 45x31
+            RenderSVGText {text} at (10,-19) size 45x32 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 45x32
                 chunk 1 text run 1 at (10.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                 chunk 1 text run 1 at (20.00,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                 chunk 1 text run 1 at (30.00,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -168,8 +168,8 @@ layer at (0,0) size 800x600
                 RenderSVGContainer {g} at (326,358) size 14x32
                   RenderSVGPath {line} at (331,358) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (326,376) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-            RenderSVGText {text} at (10,-19) size 55x31 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 55x31
+            RenderSVGText {text} at (10,-19) size 55x32 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 55x32
                 chunk 1 text run 1 at (10.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                 chunk 1 text run 1 at (20.00,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                 chunk 1 text run 1 at (35.00,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -185,8 +185,8 @@ layer at (0,0) size 800x600
                 RenderSVGContainer {g} at (268,400) size 14x32
                   RenderSVGPath {line} at (273,400) size 4x25 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (268,418) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-            RenderSVGText {text} at (0,-19) size 60x26 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 60x26
+            RenderSVGText {text} at (0,-19) size 60x27 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 60x27
                 chunk 1 text run 1 at (0.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                 chunk 1 text run 1 at (15.00,5.00) startOffset 0 endOffset 3 width 45.00: "234"
           RenderSVGContainer {g} at (260,425) size 82x40 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,240.00)}]
@@ -210,8 +210,8 @@ layer at (0,0) size 800x600
                 RenderSVGContainer {g} at (310,433) size 14x32
                   RenderSVGPath {line} at (315,433) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (310,451) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-            RenderSVGText {text} at (10,-19) size 45x16 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 45x16
+            RenderSVGText {text} at (10,-19) size 45x17 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 45x17
                 chunk 1 text run 1 at (10.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                 chunk 1 text run 1 at (20.00,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                 chunk 1 text run 1 at (30.00,-5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -227,8 +227,8 @@ layer at (0,0) size 800x600
                 RenderSVGContainer {g} at (343,483) size 14x32
                   RenderSVGPath {line} at (348,483) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (343,501) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-            RenderSVGText {text} at (10,-19) size 95x16 contains 1 chunk(s)
-              RenderSVGInlineText {#text} at (0,0) size 95x16
+            RenderSVGText {text} at (10,-19) size 95x17 contains 1 chunk(s)
+              RenderSVGInlineText {#text} at (0,0) size 95x17
                 chunk 1 text run 1 at (10.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                 chunk 1 text run 1 at (60.00,-5.00) startOffset 0 endOffset 3 width 45.00: "234"
       RenderSVGContainer {g} at (356,15) size 199x535 [transform={m=((1.00,0.00)(0.00,1.00)) t=(250.00,40.00)}]
@@ -246,8 +246,8 @@ layer at (0,0) size 800x600
                 RenderSVGContainer {g} at (410,91) size 14x33
                   RenderSVGPath {line} at (415,91) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (410,110) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-              RenderSVGText {text} at (-30,21) size 60x11 contains 1 chunk(s)
-                RenderSVGInlineText {#text} at (0,0) size 60x11
+              RenderSVGText {text} at (-30,21) size 60x12 contains 1 chunk(s)
+                RenderSVGInlineText {#text} at (0,0) size 60x12
                   chunk 1 (middle anchor) text run 1 at (-30.00,30.00) startOffset 0 endOffset 4 width 60.00: "1234"
               RenderSVGContainer {g} at (426,141) size 14x33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(10.00,60.00)}]
                 RenderSVGContainer {g} at (426,141) size 14x33
@@ -265,8 +265,8 @@ layer at (0,0) size 800x600
                 RenderSVGContainer {g} at (476,141) size 14x33
                   RenderSVGPath {line} at (481,141) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (476,160) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-              RenderSVGText {text} at (2,51) size 46x11 contains 1 chunk(s)
-                RenderSVGInlineText {#text} at (0,0) size 46x11
+              RenderSVGText {text} at (2,51) size 46x12 contains 1 chunk(s)
+                RenderSVGInlineText {#text} at (0,0) size 46x12
                   chunk 1 (middle anchor) text run 1 at (2.50,60.00) startOffset 0 endOffset 1 width 15.00: "1"
                   chunk 1 (middle anchor) text run 1 at (12.50,60.00) startOffset 0 endOffset 1 width 15.00: "2"
                   chunk 1 (middle anchor) text run 1 at (22.50,60.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -279,8 +279,8 @@ layer at (0,0) size 800x600
                 RenderSVGContainer {g} at (510,191) size 14x33
                   RenderSVGPath {line} at (515,191) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (510,210) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-              RenderSVGText {text} at (2,81) size 81x11 contains 1 chunk(s)
-                RenderSVGInlineText {#text} at (0,0) size 81x11
+              RenderSVGText {text} at (2,81) size 81x12 contains 1 chunk(s)
+                RenderSVGInlineText {#text} at (0,0) size 81x12
                   chunk 1 (middle anchor) text run 1 at (2.50,90.00) startOffset 0 endOffset 1 width 15.00: "1"
                   chunk 1 (middle anchor) text run 1 at (37.50,90.00) startOffset 0 endOffset 3 width 45.00: "234"
               RenderSVGContainer {g} at (403,225) size 102x65 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,120.00)}]
@@ -300,8 +300,8 @@ layer at (0,0) size 800x600
                   RenderSVGContainer {g} at (485,258) size 14x32
                     RenderSVGPath {line} at (490,258) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (485,276) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (-8,-19) size 61x31 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 61x31
+                RenderSVGText {text} at (-8,-19) size 61x32 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 61x32
                     chunk 1 (middle anchor) text run 1 at (-7.50,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (middle anchor) text run 1 at (7.50,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                     chunk 1 (middle anchor) text run 1 at (22.50,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -323,8 +323,8 @@ layer at (0,0) size 800x600
                   RenderSVGContainer {g} at (476,308) size 14x32
                     RenderSVGPath {line} at (481,308) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (476,326) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (2,-19) size 46x31 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 46x31
+                RenderSVGText {text} at (2,-19) size 46x32 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 46x32
                     chunk 1 (middle anchor) text run 1 at (2.50,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (middle anchor) text run 1 at (12.50,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                     chunk 1 (middle anchor) text run 1 at (22.50,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -346,8 +346,8 @@ layer at (0,0) size 800x600
                   RenderSVGContainer {g} at (493,358) size 14x32
                     RenderSVGPath {line} at (498,358) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (493,376) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (2,-19) size 56x31 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 56x31
+                RenderSVGText {text} at (2,-19) size 56x32 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 56x32
                     chunk 1 (middle anchor) text run 1 at (2.50,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (middle anchor) text run 1 at (12.50,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                     chunk 1 (middle anchor) text run 1 at (27.50,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -361,8 +361,8 @@ layer at (0,0) size 800x600
                   RenderSVGContainer {g} at (435,400) size 14x32
                     RenderSVGPath {line} at (440,400) size 4x25 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (435,418) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (-8,-19) size 46x26 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 46x26
+                RenderSVGText {text} at (-8,-19) size 46x27 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 46x27
                     chunk 1 (middle anchor) text run 1 at (-7.50,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (middle anchor) text run 1 at (-7.50,5.00) startOffset 0 endOffset 3 width 45.00: "234"
               RenderSVGContainer {g} at (420,425) size 77x40 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,240.00)}]
@@ -382,8 +382,8 @@ layer at (0,0) size 800x600
                   RenderSVGContainer {g} at (476,433) size 14x32
                     RenderSVGPath {line} at (481,433) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (476,451) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (2,-19) size 46x16 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 46x16
+                RenderSVGText {text} at (2,-19) size 46x17 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 46x17
                     chunk 1 (middle anchor) text run 1 at (2.50,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (middle anchor) text run 1 at (12.50,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                     chunk 1 (middle anchor) text run 1 at (22.50,-5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -397,8 +397,8 @@ layer at (0,0) size 800x600
                   RenderSVGContainer {g} at (510,483) size 14x32
                     RenderSVGPath {line} at (515,483) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (510,501) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (2,-19) size 81x16 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 81x16
+                RenderSVGText {text} at (2,-19) size 81x17 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 81x17
                     chunk 1 (middle anchor) text run 1 at (2.50,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (middle anchor) text run 1 at (37.50,-5.00) startOffset 0 endOffset 3 width 45.00: "234"
       RenderSVGContainer {g} at (483,15) size 207x535 [transform={m=((1.00,0.00)(0.00,1.00)) t=(350.00,40.00)}]
@@ -416,8 +416,8 @@ layer at (0,0) size 800x600
                 RenderSVGContainer {g} at (576,91) size 14x33
                   RenderSVGPath {line} at (581,91) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (576,110) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-              RenderSVGText {text} at (-60,21) size 60x11 contains 1 chunk(s)
-                RenderSVGInlineText {#text} at (0,0) size 60x11
+              RenderSVGText {text} at (-60,21) size 60x12 contains 1 chunk(s)
+                RenderSVGInlineText {#text} at (0,0) size 60x12
                   chunk 1 (end anchor) text run 1 at (-60.00,30.00) startOffset 0 endOffset 4 width 60.00: "1234"
               RenderSVGContainer {g} at (593,141) size 14x33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(10.00,60.00)}]
                 RenderSVGContainer {g} at (593,141) size 14x33
@@ -435,8 +435,8 @@ layer at (0,0) size 800x600
                 RenderSVGContainer {g} at (643,141) size 14x33
                   RenderSVGPath {line} at (648,141) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (643,160) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-              RenderSVGText {text} at (-5,51) size 45x11 contains 1 chunk(s)
-                RenderSVGInlineText {#text} at (0,0) size 45x11
+              RenderSVGText {text} at (-5,51) size 45x12 contains 1 chunk(s)
+                RenderSVGInlineText {#text} at (0,0) size 45x12
                   chunk 1 (end anchor) text run 1 at (-5.00,60.00) startOffset 0 endOffset 1 width 15.00: "1"
                   chunk 1 (end anchor) text run 1 at (5.00,60.00) startOffset 0 endOffset 1 width 15.00: "2"
                   chunk 1 (end anchor) text run 1 at (15.00,60.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -449,8 +449,8 @@ layer at (0,0) size 800x600
                 RenderSVGContainer {g} at (676,191) size 14x33
                   RenderSVGPath {line} at (681,191) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                   RenderSVGPath {rect} at (676,210) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-              RenderSVGText {text} at (-5,81) size 65x11 contains 1 chunk(s)
-                RenderSVGInlineText {#text} at (0,0) size 65x11
+              RenderSVGText {text} at (-5,81) size 65x12 contains 1 chunk(s)
+                RenderSVGInlineText {#text} at (0,0) size 65x12
                   chunk 1 (end anchor) text run 1 at (-5.00,90.00) startOffset 0 endOffset 1 width 15.00: "1"
                   chunk 1 (end anchor) text run 1 at (15.00,90.00) startOffset 0 endOffset 3 width 45.00: "234"
               RenderSVGContainer {g} at (558,225) size 107x65 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,120.00)}]
@@ -470,8 +470,8 @@ layer at (0,0) size 800x600
                   RenderSVGContainer {g} at (651,258) size 14x32
                     RenderSVGPath {line} at (656,258) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (651,276) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (-15,-19) size 60x31 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 60x31
+                RenderSVGText {text} at (-15,-19) size 60x32 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 60x32
                     chunk 1 (end anchor) text run 1 at (-15.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (end anchor) text run 1 at (0.00,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                     chunk 1 (end anchor) text run 1 at (15.00,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -493,8 +493,8 @@ layer at (0,0) size 800x600
                   RenderSVGContainer {g} at (643,308) size 14x32
                     RenderSVGPath {line} at (648,308) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (643,326) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (-5,-19) size 45x31 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 45x31
+                RenderSVGText {text} at (-5,-19) size 45x32 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 45x32
                     chunk 1 (end anchor) text run 1 at (-5.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (end anchor) text run 1 at (5.00,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                     chunk 1 (end anchor) text run 1 at (15.00,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -516,8 +516,8 @@ layer at (0,0) size 800x600
                   RenderSVGContainer {g} at (660,358) size 14x32
                     RenderSVGPath {line} at (665,358) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (660,376) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (-5,-19) size 55x31 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 55x31
+                RenderSVGText {text} at (-5,-19) size 55x32 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 55x32
                     chunk 1 (end anchor) text run 1 at (-5.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (end anchor) text run 1 at (5.00,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                     chunk 1 (end anchor) text run 1 at (20.00,5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -531,8 +531,8 @@ layer at (0,0) size 800x600
                   RenderSVGContainer {g} at (601,400) size 14x32
                     RenderSVGPath {line} at (606,400) size 4x25 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (601,418) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (-30,-19) size 45x26 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (15,0) size 45x26
+                RenderSVGText {text} at (-30,-19) size 45x27 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (15,0) size 45x27
                     chunk 1 (end anchor) text run 1 at (-15.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (end anchor) text run 1 at (-30.00,5.00) startOffset 0 endOffset 3 width 45.00: "234"
               RenderSVGContainer {g} at (575,425) size 82x40 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,240.00)}]
@@ -552,8 +552,8 @@ layer at (0,0) size 800x600
                   RenderSVGContainer {g} at (643,433) size 14x32
                     RenderSVGPath {line} at (648,433) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (643,451) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (-5,-19) size 45x16 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 45x16
+                RenderSVGText {text} at (-5,-19) size 45x17 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 45x17
                     chunk 1 (end anchor) text run 1 at (-5.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (end anchor) text run 1 at (5.00,-5.00) startOffset 0 endOffset 1 width 15.00: "2"
                     chunk 1 (end anchor) text run 1 at (15.00,-5.00) startOffset 0 endOffset 1 width 15.00: "3"
@@ -567,8 +567,8 @@ layer at (0,0) size 800x600
                   RenderSVGContainer {g} at (676,483) size 14x32
                     RenderSVGPath {line} at (681,483) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                     RenderSVGPath {rect} at (676,501) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-                RenderSVGText {text} at (-5,-19) size 65x16 contains 1 chunk(s)
-                  RenderSVGInlineText {#text} at (0,0) size 65x16
+                RenderSVGText {text} at (-5,-19) size 65x17 contains 1 chunk(s)
+                  RenderSVGInlineText {#text} at (0,0) size 65x17
                     chunk 1 (end anchor) text run 1 at (-5.00,-10.00) startOffset 0 endOffset 1 width 15.00: "1"
                     chunk 1 (end anchor) text run 1 at (15.00,-5.00) startOffset 0 endOffset 3 width 45.00: "234"
     RenderSVGText {text} at (10,314) size 264x46 contains 1 chunk(s)
diff --git a/LayoutTests/platform/mac/svg/text/text-text-06-t-expected.txt b/LayoutTests/platform/mac/svg/text/text-text-06-t-expected.txt
index 1ef07e1..d7337db 100644
--- a/LayoutTests/platform/mac/svg/text/text-text-06-t-expected.txt
+++ b/LayoutTests/platform/mac/svg/text/text-text-06-t-expected.txt
@@ -50,8 +50,8 @@ layer at (0,0) size 800x600
               RenderSVGContainer {g} at (410,91) size 14x33
                 RenderSVGPath {line} at (415,91) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                 RenderSVGPath {rect} at (410,110) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-          RenderSVGText {text} at (10,-9) size 135x11 contains 1 chunk(s)
-            RenderSVGInlineText {#text} at (0,0) size 135x11
+          RenderSVGText {text} at (10,-9) size 135x12 contains 1 chunk(s)
+            RenderSVGInlineText {#text} at (0,0) size 135x12
               chunk 1 text run 1 at (10.00,0.00) startOffset 0 endOffset 2 width 15.00: "fi"
               chunk 1 text run 1 at (40.00,0.00) startOffset 0 endOffset 1 width 15.00: "1"
               chunk 1 text run 1 at (70.00,0.00) startOffset 0 endOffset 1 width 15.00: "2"
@@ -88,8 +88,8 @@ layer at (0,0) size 800x600
               RenderSVGContainer {g} at (293,208) size 14x32
                 RenderSVGPath {line} at (298,208) size 4x26 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                 RenderSVGPath {rect} at (293,226) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-          RenderSVGText {text} at (0,-19) size 75x51 contains 1 chunk(s)
-            RenderSVGInlineText {#text} at (0,0) size 75x51
+          RenderSVGText {text} at (0,-19) size 75x52 contains 1 chunk(s)
+            RenderSVGInlineText {#text} at (0,0) size 75x52
               chunk 1 text run 1 at (0.00,-10.00) startOffset 0 endOffset 2 width 15.00: "fi"
               chunk 1 text run 1 at (15.00,0.00) startOffset 0 endOffset 1 width 15.00: "1"
               chunk 1 text run 1 at (30.00,10.00) startOffset 0 endOffset 1 width 15.00: "2"
@@ -126,8 +126,8 @@ layer at (0,0) size 800x600
               RenderSVGContainer {g} at (410,375) size 14x32
                 RenderSVGPath {line} at (415,375) size 4x25 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                 RenderSVGPath {rect} at (410,393) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
-          RenderSVGText {text} at (10,-19) size 135x51 contains 1 chunk(s)
-            RenderSVGInlineText {#text} at (0,0) size 135x51
+          RenderSVGText {text} at (10,-19) size 135x52 contains 1 chunk(s)
+            RenderSVGInlineText {#text} at (0,0) size 135x52
               chunk 1 text run 1 at (10.00,-10.00) startOffset 0 endOffset 2 width 15.00: "fi"
               chunk 1 text run 1 at (40.00,0.00) startOffset 0 endOffset 1 width 15.00: "1"
               chunk 1 text run 1 at (70.00,10.00) startOffset 0 endOffset 1 width 15.00: "2"
diff --git a/LayoutTests/svg/custom/glyph-transformation-with-hkern-expected.txt b/LayoutTests/svg/custom/glyph-transformation-with-hkern-expected.txt
index a02edc7..cdaabab 100644
--- a/LayoutTests/svg/custom/glyph-transformation-with-hkern-expected.txt
+++ b/LayoutTests/svg/custom/glyph-transformation-with-hkern-expected.txt
@@ -1,10 +1,10 @@
 layer at (0,0) size 800x600
   RenderView at (0,0) size 800x600
 layer at (0,0) size 800x600
-  RenderSVGRoot {svg} at (30,1) size 138x152
+  RenderSVGRoot {svg} at (30,0) size 138x153
     RenderSVGHiddenContainer {defs} at (0,0) size 0x0
-    RenderSVGText {text} at (30,1) size 138x152 contains 1 chunk(s)
-      RenderSVGInlineText {#text} at (0,0) size 138x152
+    RenderSVGText {text} at (30,0) size 138x153 contains 1 chunk(s)
+      RenderSVGInlineText {#text} at (0,0) size 138x153
         chunk 1 text run 1 at (30.00,30.00) startOffset 0 endOffset 1 width 25.27: "R"
         chunk 1 text run 1 at (50.00,50.00) startOffset 0 endOffset 1 width 27.23: "O"
         chunk 1 text run 1 at (70.00,70.00) startOffset 0 endOffset 1 width 21.39: "T"
diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
index 6b412ab..0f6900a 100644
--- a/Source/WebCore/ChangeLog
+++ b/Source/WebCore/ChangeLog
@@ -1,3 +1,19 @@
+2011-01-25  Nikolas Zimmermann  <nzimmermann at rim.com>
+
+        Reviewed by Dirk Schulze.
+
+        Introduce FontMetrics abstraction
+        https://bugs.webkit.org/show_bug.cgi?id=51456
+
+        Use accurate floating-point metrics for SVG Font calculations instead of casting float -> integer.
+        This hopefully fixes differences between 32/64 bit bots.
+
+        Needs new layout test results for several platforms, which need to be taken from the bots landing afterwards.
+
+        * platform/graphics/SimpleFontData.cpp:
+        (WebCore::SimpleFontData::SimpleFontData):
+        (WebCore::SimpleFontData::initCharWidths):
+
 2011-01-24  Pavel Podivilov  <podivilov at chromium.org>
 
         Reviewed by Pavel Feldman.
diff --git a/Source/WebCore/platform/graphics/SimpleFontData.cpp b/Source/WebCore/platform/graphics/SimpleFontData.cpp
index 19e2d4a..2693609 100644
--- a/Source/WebCore/platform/graphics/SimpleFontData.cpp
+++ b/Source/WebCore/platform/graphics/SimpleFontData.cpp
@@ -79,31 +79,30 @@ SimpleFontData::SimpleFontData(PassOwnPtr<SVGFontData> svgFontData, int size, bo
     if (unitsPerEm)
         scale /= unitsPerEm;
 
-    // FIXME: Use floating-point metrics, now that they're exposed!
-    int xHeight = static_cast<int>(svgFontFaceElement->xHeight() * scale);
-    int ascent = static_cast<int>(svgFontFaceElement->ascent() * scale);
-    int descent = static_cast<int>(svgFontFaceElement->descent() * scale);
-    int lineGap = static_cast<int>(0.1f * size);
+    float xHeight = svgFontFaceElement->xHeight() * scale;
+    float ascent = svgFontFaceElement->ascent() * scale;
+    float descent = svgFontFaceElement->descent() * scale;
+    float lineGap = 0.1f * size;
     m_fontMetrics.setUnitsPerEm(unitsPerEm);
     m_fontMetrics.setAscent(ascent);
     m_fontMetrics.setDescent(descent);
     m_fontMetrics.setLineGap(lineGap);
-    m_fontMetrics.setLineSpacing(ascent + descent + lineGap);
+    m_fontMetrics.setLineSpacing(roundf(ascent) + roundf(descent) + roundf(lineGap));
     m_fontMetrics.setXHeight(xHeight);
 
     SVGFontElement* associatedFontElement = svgFontFaceElement->associatedFontElement();
 
     Vector<SVGGlyphIdentifier> spaceGlyphs;
     associatedFontElement->getGlyphIdentifiersForString(String(" ", 1), spaceGlyphs);
-    m_spaceWidth = spaceGlyphs.isEmpty() ? xHeight : static_cast<float>(spaceGlyphs.first().horizontalAdvanceX * scale);
+    m_spaceWidth = spaceGlyphs.isEmpty() ? xHeight : spaceGlyphs.first().horizontalAdvanceX * scale;
 
     Vector<SVGGlyphIdentifier> numeralZeroGlyphs;
     associatedFontElement->getGlyphIdentifiersForString(String("0", 1), numeralZeroGlyphs);
-    m_avgCharWidth = numeralZeroGlyphs.isEmpty() ? m_spaceWidth : static_cast<float>(numeralZeroGlyphs.first().horizontalAdvanceX * scale);
+    m_avgCharWidth = numeralZeroGlyphs.isEmpty() ? m_spaceWidth : numeralZeroGlyphs.first().horizontalAdvanceX * scale;
 
     Vector<SVGGlyphIdentifier> letterWGlyphs;
     associatedFontElement->getGlyphIdentifiersForString(String("W", 1), letterWGlyphs);
-    m_maxCharWidth = letterWGlyphs.isEmpty() ? ascent : static_cast<float>(letterWGlyphs.first().horizontalAdvanceX * scale);
+    m_maxCharWidth = letterWGlyphs.isEmpty() ? ascent : letterWGlyphs.first().horizontalAdvanceX * scale;
 
     // FIXME: is there a way we can get the space glyph from the SVGGlyphIdentifier above?
     m_spaceGlyph = 0;
@@ -133,9 +132,8 @@ void SimpleFontData::initCharWidths()
     if (m_avgCharWidth <= 0.f)
         m_avgCharWidth = m_fontMetrics.xHeight();
 
-    // FIXME: Use floating-point metrics, now that they're exposed!
     if (m_maxCharWidth <= 0.f)
-        m_maxCharWidth = max<float>(m_avgCharWidth, m_fontMetrics.ascent());
+        m_maxCharWidth = max(m_avgCharWidth, m_fontMetrics.floatAscent());
 }
 
 void SimpleFontData::platformGlyphInit()

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list