Changeset 209910 in webkit


Ignore:
Timestamp:
Dec 15, 2016 10:32:36 PM (7 years ago)
Author:
Alan Bujtas
Message:

text-align: justify and word-spacing combine to overflow column
https://bugs.webkit.org/show_bug.cgi?id=165796
rdar://problem/29672168

Reviewed by Myles C. Maxfield.

Source/WebCore:

The value of the word-spacing property is not applied on the inline-tree boxes (normal line layout)
with kerning enabled. It causes hittest failures and selection/rendering glitches.
We normally use the pre-computed 'WordMeasurements' values to figure out the run widths. However
with kerning on, in some cases we need to re-measure a certain part of the text by calling RenderText::width().
This function omits the word-spacing value for leading whitespace, so when this text fragment starts with a whitespace,
(while it's not at the beginning of the run) we have to manually add the word-spacing value back.
r146087 added this logic with the restriction of applying it only to whitespace-only runs.

Test: fast/css/word-spacing-with-normal-layout.html

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::setLogicalWidthForTextRun):

LayoutTests:

These are progressions.

  • fast/css/word-spacing-with-normal-layout-expected.html: Added.
  • fast/css/word-spacing-with-normal-layout.html: Added.
  • platform/mac/css1/text_properties/word_spacing-expected.txt:
  • platform/mac/fast/css/word-space-extra-expected.txt:
  • platform/mac/fast/text/whitespace/span-in-word-space-causes-overflow-expected.txt:
  • platform/mac/fast/text/word-space-expected.txt:
  • platform/mac/svg/custom/svg-fonts-in-html-expected.txt:
  • platform/mac/svg/custom/svg-fonts-word-spacing-expected.txt:
Location:
trunk
Files:
2 added
11 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r209901 r209910  
     12016-12-15  Zalan Bujtas  <zalan@apple.com>
     2
     3        text-align: justify and word-spacing combine to overflow column
     4        https://bugs.webkit.org/show_bug.cgi?id=165796
     5        rdar://problem/29672168
     6
     7        Reviewed by Myles C. Maxfield.
     8
     9        These are progressions.
     10
     11        * fast/css/word-spacing-with-normal-layout-expected.html: Added.
     12        * fast/css/word-spacing-with-normal-layout.html: Added.
     13        * platform/mac/css1/text_properties/word_spacing-expected.txt:
     14        * platform/mac/fast/css/word-space-extra-expected.txt:
     15        * platform/mac/fast/text/whitespace/span-in-word-space-causes-overflow-expected.txt:
     16        * platform/mac/fast/text/word-space-expected.txt:
     17        * platform/mac/svg/custom/svg-fonts-in-html-expected.txt:
     18        * platform/mac/svg/custom/svg-fonts-word-spacing-expected.txt:
     19
    1202016-12-15  Chris Dumez  <cdumez@apple.com>
    221
  • trunk/LayoutTests/platform/ios-simulator/css1/text_properties/word_spacing-expected.txt

    r195740 r209910  
    4343          text run at (0,0) width 500: "This words in this sentence should have extra space between them."
    4444      RenderBlock {P} at (0,473) size 784x40
    45         RenderText {#text} at (0,0) size 758x19
    46           text run at (0,0) width 758: "This words in this sentence should have extra space between them, but the last few words in the sentence"
     45        RenderText {#text} at (0,0) size 763x19
     46          text run at (0,0) width 763: "This words in this sentence should have extra space between them, but the last few words in the sentence"
    4747        RenderInline {SPAN} at (0,0) size 180x19
    4848          RenderText {#text} at (0,20) size 180x19
     
    8787                  text run at (0,0) width 500: "This words in this sentence should have extra space between them."
    8888              RenderBlock {P} at (4,256) size 762x40
    89                 RenderText {#text} at (0,0) size 694x39
    90                   text run at (0,0) width 694: "This words in this sentence should have extra space between them, but the last few words in the"
     89                RenderText {#text} at (0,0) size 699x39
     90                  text run at (0,0) width 699: "This words in this sentence should have extra space between them, but the last few words in the"
    9191                  text run at (0,20) width 65: "sentence "
    9292                RenderInline {SPAN} at (0,0) size 180x19
  • trunk/LayoutTests/platform/ios-simulator/fast/text/whitespace/span-in-word-space-causes-overflow-expected.txt

    r179104 r209910  
    1010          RenderText {#text} at (151,0) size 22x19
    1111            text run at (151,0) width 22: "not"
    12         RenderText {#text} at (0,20) size 134x19
    13           text run at (0,20) width 134: "even be tolerated."
     12        RenderText {#text} at (0,20) size 154x19
     13          text run at (0,20) width 154: "even be tolerated."
  • trunk/LayoutTests/platform/mac/css1/text_properties/word_spacing-expected.txt

    r195740 r209910  
    4343          text run at (0,0) width 500: "This words in this sentence should have extra space between them."
    4444      RenderBlock {P} at (0,468) size 769x36
    45         RenderText {#text} at (0,0) size 758x18
    46           text run at (0,0) width 758: "This words in this sentence should have extra space between them, but the last few words in the sentence"
     45        RenderText {#text} at (0,0) size 763x18
     46          text run at (0,0) width 763: "This words in this sentence should have extra space between them, but the last few words in the sentence"
    4747        RenderInline {SPAN} at (0,0) size 180x18
    4848          RenderText {#text} at (0,18) size 180x18
     
    8787                  text run at (0,0) width 500: "This words in this sentence should have extra space between them."
    8888              RenderBlock {P} at (4,242) size 747x36
    89                 RenderText {#text} at (0,0) size 694x36
    90                   text run at (0,0) width 694: "This words in this sentence should have extra space between them, but the last few words in the"
     89                RenderText {#text} at (0,0) size 699x36
     90                  text run at (0,0) width 699: "This words in this sentence should have extra space between them, but the last few words in the"
    9191                  text run at (0,18) width 65: "sentence "
    9292                RenderInline {SPAN} at (0,0) size 180x18
  • trunk/LayoutTests/platform/mac/fast/css/word-space-extra-expected.txt

    r192660 r209910  
    1 layer at (0,0) size 2081x2404
     1layer at (0,0) size 2041x2404
    22  RenderView at (0,0) size 785x585
    33layer at (0,0) size 785x2404
     
    1818            RenderText {#text} at (256,15) size 24x15
    1919              text run at (256,15) width 24: "for"
    20           RenderText {#text} at (299,15) size 29x15
    21             text run at (299,15) width 29: " "
     20          RenderText {#text} at (299,15) size 9x15
     21            text run at (299,15) width 9: " "
    2222          RenderInline {STRONG} at (0,0) size 63x15
    23             RenderText {#text} at (327,15) size 63x15
    24               text run at (327,15) width 63: "elements"
    25           RenderText {#text} at (409,15) size 29x15
    26             text run at (409,15) width 29: " "
     23            RenderText {#text} at (307,15) size 63x15
     24              text run at (307,15) width 63: "elements"
     25          RenderText {#text} at (389,15) size 9x15
     26            text run at (389,15) width 9: " "
    2727          RenderInline {TT} at (0,0) size 48x15
    28             RenderText {#text} at (437,15) size 48x15
    29               text run at (437,15) width 48: "within"
    30           RenderText {#text} at (504,15) size 654x30
    31             text run at (504,15) width 130: " elements too."
    32             text run at (653,15) width 1: " "
     28            RenderText {#text} at (397,15) size 48x15
     29              text run at (397,15) width 48: "within"
     30          RenderText {#text} at (464,15) size 614x30
     31            text run at (464,15) width 130: " elements too."
     32            text run at (613,15) width 1: " "
    3333            text run at (0,30) width 257: "Word   spacing test "
    3434          RenderInline {EM} at (0,0) size 24x15
    3535            RenderText {#text} at (256,30) size 24x15
    3636              text run at (256,30) width 24: "for"
    37           RenderText {#text} at (299,30) size 29x15
    38             text run at (299,30) width 29: " "
     37          RenderText {#text} at (299,30) size 9x15
     38            text run at (299,30) width 9: " "
    3939          RenderInline {STRONG} at (0,0) size 63x15
    40             RenderText {#text} at (327,30) size 63x15
    41               text run at (327,30) width 63: "elements"
    42           RenderText {#text} at (409,30) size 29x15
    43             text run at (409,30) width 29: " "
     40            RenderText {#text} at (307,30) size 63x15
     41              text run at (307,30) width 63: "elements"
     42          RenderText {#text} at (389,30) size 9x15
     43            text run at (389,30) width 9: " "
    4444          RenderInline {TT} at (0,0) size 48x15
    45             RenderText {#text} at (437,30) size 48x15
    46               text run at (437,30) width 48: "within"
    47           RenderText {#text} at (504,30) size 99x15
    48             text run at (504,30) width 99: " elements "
    49           RenderText {#text} at (602,30) size 1094x30
    50             text run at (602,30) width 472: " too. (with comment between elements and too)"
    51             text run at (1093,30) width 1: " "
     45            RenderText {#text} at (397,30) size 48x15
     46              text run at (397,30) width 48: "within"
     47          RenderText {#text} at (464,30) size 99x15
     48            text run at (464,30) width 99: " elements "
     49          RenderText {#text} at (562,30) size 1054x30
     50            text run at (562,30) width 472: " too. (with comment between elements and too)"
     51            text run at (1053,30) width 1: " "
    5252            text run at (0,45) width 257: "Word   spacing test "
    5353          RenderInline {EM} at (0,0) size 24x15
    5454            RenderText {#text} at (256,45) size 24x15
    5555              text run at (256,45) width 24: "for"
    56           RenderText {#text} at (299,45) size 29x15
    57             text run at (299,45) width 29: " "
     56          RenderText {#text} at (299,45) size 9x15
     57            text run at (299,45) width 9: " "
    5858          RenderInline {STRONG} at (0,0) size 63x15
    59             RenderText {#text} at (327,45) size 63x15
    60               text run at (327,45) width 63: "elements"
    61           RenderText {#text} at (409,45) size 29x15
    62             text run at (409,45) width 29: " "
     59            RenderText {#text} at (307,45) size 63x15
     60              text run at (307,45) width 63: "elements"
     61          RenderText {#text} at (389,45) size 9x15
     62            text run at (389,45) width 9: " "
    6363          RenderInline {TT} at (0,0) size 48x15
    64             RenderText {#text} at (437,45) size 48x15
    65               text run at (437,45) width 48: "within"
    66           RenderText {#text} at (504,45) size 71x15
    67             text run at (504,45) width 71: " elements"
    68           RenderText {#text} at (594,45) size 1318x30
    69             text run at (594,45) width 704: " too. (with comment (no preceeding space) between elements and too)"
    70             text run at (1317,45) width 1: " "
     64            RenderText {#text} at (397,45) size 48x15
     65              text run at (397,45) width 48: "within"
     66          RenderText {#text} at (464,45) size 71x15
     67            text run at (464,45) width 71: " elements"
     68          RenderText {#text} at (554,45) size 1278x30
     69            text run at (554,45) width 704: " too. (with comment (no preceeding space) between elements and too)"
     70            text run at (1277,45) width 1: " "
    7171            text run at (0,60) width 257: "Word   spacing test "
    7272          RenderInline {EM} at (0,0) size 24x15
    7373            RenderText {#text} at (256,60) size 24x15
    7474              text run at (256,60) width 24: "for"
    75           RenderText {#text} at (299,60) size 29x15
    76             text run at (299,60) width 29: " "
     75          RenderText {#text} at (299,60) size 9x15
     76            text run at (299,60) width 9: " "
    7777          RenderInline {STRONG} at (0,0) size 63x15
    78             RenderText {#text} at (327,60) size 63x15
    79               text run at (327,60) width 63: "elements"
    80           RenderText {#text} at (409,60) size 29x15
    81             text run at (409,60) width 29: " "
     78            RenderText {#text} at (307,60) size 63x15
     79              text run at (307,60) width 63: "elements"
     80          RenderText {#text} at (389,60) size 9x15
     81            text run at (389,60) width 9: " "
    8282          RenderInline {TT} at (0,0) size 48x15
    83             RenderText {#text} at (437,60) size 48x15
    84               text run at (437,60) width 48: "within"
    85           RenderText {#text} at (504,60) size 99x15
    86             text run at (504,60) width 99: " elements "
    87           RenderText {#text} at (602,60) size 700x15
    88             text run at (602,60) width 680: "too. (with comment (no trailing space) between elements and too)"
    89             text run at (1301,60) width 1: " "
    90           RenderInline {SPAN} at (0,0) size 390x15
     83            RenderText {#text} at (397,60) size 48x15
     84              text run at (397,60) width 48: "within"
     85          RenderText {#text} at (464,60) size 99x15
     86            text run at (464,60) width 99: " elements "
     87          RenderText {#text} at (562,60) size 700x15
     88            text run at (562,60) width 680: "too. (with comment (no trailing space) between elements and too)"
     89            text run at (1261,60) width 1: " "
     90          RenderInline {SPAN} at (0,0) size 370x15
    9191            RenderText {#text} at (0,75) size 257x15
    9292              text run at (0,75) width 257: "Word   spacing test "
     
    9494              RenderText {#text} at (256,75) size 24x15
    9595                text run at (256,75) width 24: "for"
    96             RenderText {#text} at (299,75) size 29x15
    97               text run at (299,75) width 29: " "
     96            RenderText {#text} at (299,75) size 9x15
     97              text run at (299,75) width 9: " "
    9898            RenderInline {STRONG} at (0,0) size 63x15
    99               RenderText {#text} at (327,75) size 63x15
    100                 text run at (327,75) width 63: "elements"
    101           RenderText {#text} at (409,75) size 29x15
    102             text run at (409,75) width 29: " "
     99              RenderText {#text} at (307,75) size 63x15
     100                text run at (307,75) width 63: "elements"
     101          RenderText {#text} at (389,75) size 9x15
     102            text run at (389,75) width 9: " "
    103103          RenderInline {TT} at (0,0) size 48x15
    104             RenderText {#text} at (437,75) size 48x15
    105               text run at (437,75) width 48: "within"
    106           RenderText {#text} at (504,75) size 1137x30
    107             text run at (504,75) width 613: " elements too. (with monospace font from Word to elements)"
    108             text run at (1136,75) width 1: " "
     104            RenderText {#text} at (397,75) size 48x15
     105              text run at (397,75) width 48: "within"
     106          RenderText {#text} at (464,75) size 1097x30
     107            text run at (464,75) width 613: " elements too. (with monospace font from Word to elements)"
     108            text run at (1096,75) width 1: " "
    109109            text run at (0,90) width 257: "Word   spacing test "
    110           RenderInline {SPAN} at (0,0) size 229x15
     110          RenderInline {SPAN} at (0,0) size 189x15
    111111            RenderInline {EM} at (0,0) size 24x15
    112112              RenderText {#text} at (256,90) size 24x15
    113113                text run at (256,90) width 24: "for"
    114             RenderText {#text} at (299,90) size 29x15
    115               text run at (299,90) width 29: " "
     114            RenderText {#text} at (299,90) size 9x15
     115              text run at (299,90) width 9: " "
    116116            RenderInline {STRONG} at (0,0) size 63x15
    117               RenderText {#text} at (327,90) size 63x15
    118                 text run at (327,90) width 63: "elements"
    119             RenderText {#text} at (409,90) size 29x15
    120               text run at (409,90) width 29: " "
     117              RenderText {#text} at (307,90) size 63x15
     118                text run at (307,90) width 63: "elements"
     119            RenderText {#text} at (389,90) size 9x15
     120              text run at (389,90) width 9: " "
    121121            RenderInline {TT} at (0,0) size 48x15
    122               RenderText {#text} at (437,90) size 48x15
    123                 text run at (437,90) width 48: "within"
    124           RenderText {#text} at (504,90) size 1114x30
    125             text run at (504,90) width 590: " elements too. (with monospace font from for to within)"
    126             text run at (1113,90) width 1: " "
     122              RenderText {#text} at (397,90) size 48x15
     123                text run at (397,90) width 48: "within"
     124          RenderText {#text} at (464,90) size 1074x30
     125            text run at (464,90) width 590: " elements too. (with monospace font from for to within)"
     126            text run at (1073,90) width 1: " "
    127127            text run at (0,105) width 257: "Word   spacing test "
    128128          RenderInline {EM} at (0,0) size 24x15
    129129            RenderText {#text} at (256,105) size 24x15
    130130              text run at (256,105) width 24: "for"
    131           RenderText {#text} at (299,105) size 29x15
    132             text run at (299,105) width 29: " "
     131          RenderText {#text} at (299,105) size 9x15
     132            text run at (299,105) width 9: " "
    133133          RenderInline {STRONG} at (0,0) size 63x15
    134             RenderText {#text} at (327,105) size 63x15
    135               text run at (327,105) width 63: "elements"
    136           RenderText {#text} at (409,105) size 29x15
    137             text run at (409,105) width 29: " "
     134            RenderText {#text} at (307,105) size 63x15
     135              text run at (307,105) width 63: "elements"
     136          RenderText {#text} at (389,105) size 9x15
     137            text run at (389,105) width 9: " "
    138138          RenderInline {SPAN} at (0,0) size 189x15
    139139            RenderInline {TT} at (0,0) size 48x15
    140               RenderText {#text} at (437,105) size 48x15
    141                 text run at (437,105) width 48: "within"
    142             RenderText {#text} at (504,105) size 122x15
    143               text run at (504,105) width 122: " elements too"
    144           RenderText {#text} at (625,105) size 504x15
    145             text run at (625,105) width 484: ". (with monospace font from elements to too)"
    146             text run at (1128,105) width 1: " "
     140              RenderText {#text} at (397,105) size 48x15
     141                text run at (397,105) width 48: "within"
     142            RenderText {#text} at (464,105) size 122x15
     143              text run at (464,105) width 122: " elements too"
     144          RenderText {#text} at (585,105) size 504x15
     145            text run at (585,105) width 484: ". (with monospace font from elements to too)"
     146            text run at (1088,105) width 1: " "
    147147      RenderBlock (anonymous) at (0,47) size 769x195
    148148        RenderBR {BR} at (985,0) size 1x18
     
    158158            RenderText {#text} at (256,15) size 24x15
    159159              text run at (256,15) width 24: "for"
    160           RenderText {#text} at (299,15) size 29x15
    161             text run at (299,15) width 29: " "
     160          RenderText {#text} at (299,15) size 9x15
     161            text run at (299,15) width 9: " "
    162162          RenderInline {STRONG} at (0,0) size 63x15
    163             RenderText {#text} at (327,15) size 63x15
    164               text run at (327,15) width 63: "elements"
    165           RenderText {#text} at (409,15) size 29x15
    166             text run at (409,15) width 29: " "
     163            RenderText {#text} at (307,15) size 63x15
     164              text run at (307,15) width 63: "elements"
     165          RenderText {#text} at (389,15) size 9x15
     166            text run at (389,15) width 9: " "
    167167          RenderInline {TT} at (0,0) size 48x15
    168             RenderText {#text} at (437,15) size 48x15
    169               text run at (437,15) width 48: "within"
    170           RenderText {#text} at (504,15) size 654x30
    171             text run at (504,15) width 130: " elements too."
    172             text run at (653,15) width 1: " "
     168            RenderText {#text} at (397,15) size 48x15
     169              text run at (397,15) width 48: "within"
     170          RenderText {#text} at (464,15) size 614x30
     171            text run at (464,15) width 130: " elements too."
     172            text run at (613,15) width 1: " "
    173173            text run at (0,30) width 257: "Word   spacing test "
    174174          RenderInline {EM} at (0,0) size 24x15
    175175            RenderText {#text} at (256,30) size 24x15
    176176              text run at (256,30) width 24: "for"
    177           RenderText {#text} at (299,30) size 29x15
    178             text run at (299,30) width 29: " "
     177          RenderText {#text} at (299,30) size 9x15
     178            text run at (299,30) width 9: " "
    179179          RenderInline {STRONG} at (0,0) size 63x15
    180             RenderText {#text} at (327,30) size 63x15
    181               text run at (327,30) width 63: "elements"
    182           RenderText {#text} at (409,30) size 29x15
    183             text run at (409,30) width 29: " "
     180            RenderText {#text} at (307,30) size 63x15
     181              text run at (307,30) width 63: "elements"
     182          RenderText {#text} at (389,30) size 9x15
     183            text run at (389,30) width 9: " "
    184184          RenderInline {TT} at (0,0) size 48x15
    185             RenderText {#text} at (437,30) size 48x15
    186               text run at (437,30) width 48: "within"
    187           RenderText {#text} at (504,30) size 99x15
    188             text run at (504,30) width 99: " elements "
    189           RenderText {#text} at (602,30) size 1094x30
    190             text run at (602,30) width 472: " too. (with comment between elements and too)"
    191             text run at (1093,30) width 1: " "
     185            RenderText {#text} at (397,30) size 48x15
     186              text run at (397,30) width 48: "within"
     187          RenderText {#text} at (464,30) size 99x15
     188            text run at (464,30) width 99: " elements "
     189          RenderText {#text} at (562,30) size 1054x30
     190            text run at (562,30) width 472: " too. (with comment between elements and too)"
     191            text run at (1053,30) width 1: " "
    192192            text run at (0,45) width 257: "Word   spacing test "
    193193          RenderInline {EM} at (0,0) size 24x15
    194194            RenderText {#text} at (256,45) size 24x15
    195195              text run at (256,45) width 24: "for"
    196           RenderText {#text} at (299,45) size 29x15
    197             text run at (299,45) width 29: " "
     196          RenderText {#text} at (299,45) size 9x15
     197            text run at (299,45) width 9: " "
    198198          RenderInline {STRONG} at (0,0) size 63x15
    199             RenderText {#text} at (327,45) size 63x15
    200               text run at (327,45) width 63: "elements"
    201           RenderText {#text} at (409,45) size 29x15
    202             text run at (409,45) width 29: " "
     199            RenderText {#text} at (307,45) size 63x15
     200              text run at (307,45) width 63: "elements"
     201          RenderText {#text} at (389,45) size 9x15
     202            text run at (389,45) width 9: " "
    203203          RenderInline {TT} at (0,0) size 48x15
    204             RenderText {#text} at (437,45) size 48x15
    205               text run at (437,45) width 48: "within"
    206           RenderText {#text} at (504,45) size 71x15
    207             text run at (504,45) width 71: " elements"
    208           RenderText {#text} at (594,45) size 1318x30
    209             text run at (594,45) width 704: " too. (with comment (no preceeding space) between elements and too)"
    210             text run at (1317,45) width 1: " "
     204            RenderText {#text} at (397,45) size 48x15
     205              text run at (397,45) width 48: "within"
     206          RenderText {#text} at (464,45) size 71x15
     207            text run at (464,45) width 71: " elements"
     208          RenderText {#text} at (554,45) size 1278x30
     209            text run at (554,45) width 704: " too. (with comment (no preceeding space) between elements and too)"
     210            text run at (1277,45) width 1: " "
    211211            text run at (0,60) width 257: "Word   spacing test "
    212212          RenderInline {EM} at (0,0) size 24x15
    213213            RenderText {#text} at (256,60) size 24x15
    214214              text run at (256,60) width 24: "for"
    215           RenderText {#text} at (299,60) size 29x15
    216             text run at (299,60) width 29: " "
     215          RenderText {#text} at (299,60) size 9x15
     216            text run at (299,60) width 9: " "
    217217          RenderInline {STRONG} at (0,0) size 63x15
    218             RenderText {#text} at (327,60) size 63x15
    219               text run at (327,60) width 63: "elements"
    220           RenderText {#text} at (409,60) size 29x15
    221             text run at (409,60) width 29: " "
     218            RenderText {#text} at (307,60) size 63x15
     219              text run at (307,60) width 63: "elements"
     220          RenderText {#text} at (389,60) size 9x15
     221            text run at (389,60) width 9: " "
    222222          RenderInline {TT} at (0,0) size 48x15
    223             RenderText {#text} at (437,60) size 48x15
    224               text run at (437,60) width 48: "within"
    225           RenderText {#text} at (504,60) size 99x15
    226             text run at (504,60) width 99: " elements "
    227           RenderText {#text} at (602,60) size 700x15
    228             text run at (602,60) width 680: "too. (with comment (no trailing space) between elements and too)"
    229             text run at (1301,60) width 1: " "
    230           RenderInline {SPAN} at (0,0) size 390x15
     223            RenderText {#text} at (397,60) size 48x15
     224              text run at (397,60) width 48: "within"
     225          RenderText {#text} at (464,60) size 99x15
     226            text run at (464,60) width 99: " elements "
     227          RenderText {#text} at (562,60) size 700x15
     228            text run at (562,60) width 680: "too. (with comment (no trailing space) between elements and too)"
     229            text run at (1261,60) width 1: " "
     230          RenderInline {SPAN} at (0,0) size 370x15
    231231            RenderText {#text} at (0,75) size 257x15
    232232              text run at (0,75) width 257: "Word   spacing test "
     
    234234              RenderText {#text} at (256,75) size 24x15
    235235                text run at (256,75) width 24: "for"
    236             RenderText {#text} at (299,75) size 29x15
    237               text run at (299,75) width 29: " "
     236            RenderText {#text} at (299,75) size 9x15
     237              text run at (299,75) width 9: " "
    238238            RenderInline {STRONG} at (0,0) size 63x15
    239               RenderText {#text} at (327,75) size 63x15
    240                 text run at (327,75) width 63: "elements"
    241           RenderText {#text} at (409,75) size 29x15
    242             text run at (409,75) width 29: " "
     239              RenderText {#text} at (307,75) size 63x15
     240                text run at (307,75) width 63: "elements"
     241          RenderText {#text} at (389,75) size 9x15
     242            text run at (389,75) width 9: " "
    243243          RenderInline {TT} at (0,0) size 48x15
    244             RenderText {#text} at (437,75) size 48x15
    245               text run at (437,75) width 48: "within"
    246           RenderText {#text} at (504,75) size 1137x30
    247             text run at (504,75) width 613: " elements too. (with monospace font from Word to elements)"
    248             text run at (1136,75) width 1: " "
     244            RenderText {#text} at (397,75) size 48x15
     245              text run at (397,75) width 48: "within"
     246          RenderText {#text} at (464,75) size 1097x30
     247            text run at (464,75) width 613: " elements too. (with monospace font from Word to elements)"
     248            text run at (1096,75) width 1: " "
    249249            text run at (0,90) width 257: "Word   spacing test "
    250           RenderInline {SPAN} at (0,0) size 229x15
     250          RenderInline {SPAN} at (0,0) size 189x15
    251251            RenderInline {EM} at (0,0) size 24x15
    252252              RenderText {#text} at (256,90) size 24x15
    253253                text run at (256,90) width 24: "for"
    254             RenderText {#text} at (299,90) size 29x15
    255               text run at (299,90) width 29: " "
     254            RenderText {#text} at (299,90) size 9x15
     255              text run at (299,90) width 9: " "
    256256            RenderInline {STRONG} at (0,0) size 63x15
    257               RenderText {#text} at (327,90) size 63x15
    258                 text run at (327,90) width 63: "elements"
    259             RenderText {#text} at (409,90) size 29x15
    260               text run at (409,90) width 29: " "
     257              RenderText {#text} at (307,90) size 63x15
     258                text run at (307,90) width 63: "elements"
     259            RenderText {#text} at (389,90) size 9x15
     260              text run at (389,90) width 9: " "
    261261            RenderInline {TT} at (0,0) size 48x15
    262               RenderText {#text} at (437,90) size 48x15
    263                 text run at (437,90) width 48: "within"
    264           RenderText {#text} at (504,90) size 1114x30
    265             text run at (504,90) width 590: " elements too. (with monospace font from for to within)"
    266             text run at (1113,90) width 1: " "
     262              RenderText {#text} at (397,90) size 48x15
     263                text run at (397,90) width 48: "within"
     264          RenderText {#text} at (464,90) size 1074x30
     265            text run at (464,90) width 590: " elements too. (with monospace font from for to within)"
     266            text run at (1073,90) width 1: " "
    267267            text run at (0,105) width 257: "Word   spacing test "
    268268          RenderInline {EM} at (0,0) size 24x15
    269269            RenderText {#text} at (256,105) size 24x15
    270270              text run at (256,105) width 24: "for"
    271           RenderText {#text} at (299,105) size 29x15
    272             text run at (299,105) width 29: " "
     271          RenderText {#text} at (299,105) size 9x15
     272            text run at (299,105) width 9: " "
    273273          RenderInline {STRONG} at (0,0) size 63x15
    274             RenderText {#text} at (327,105) size 63x15
    275               text run at (327,105) width 63: "elements"
    276           RenderText {#text} at (409,105) size 29x15
    277             text run at (409,105) width 29: " "
     274            RenderText {#text} at (307,105) size 63x15
     275              text run at (307,105) width 63: "elements"
     276          RenderText {#text} at (389,105) size 9x15
     277            text run at (389,105) width 9: " "
    278278          RenderInline {SPAN} at (0,0) size 189x15
    279279            RenderInline {TT} at (0,0) size 48x15
    280               RenderText {#text} at (437,105) size 48x15
    281                 text run at (437,105) width 48: "within"
    282             RenderText {#text} at (504,105) size 122x15
    283               text run at (504,105) width 122: " elements too"
    284           RenderText {#text} at (625,105) size 504x15
    285             text run at (625,105) width 484: ". (with monospace font from elements to too)"
    286             text run at (1128,105) width 1: " "
     280              RenderText {#text} at (397,105) size 48x15
     281                text run at (397,105) width 48: "within"
     282            RenderText {#text} at (464,105) size 122x15
     283              text run at (464,105) width 122: " elements too"
     284          RenderText {#text} at (585,105) size 504x15
     285            text run at (585,105) width 484: ". (with monospace font from elements to too)"
     286            text run at (1088,105) width 1: " "
    287287      RenderBlock (anonymous) at (0,421) size 769x0
    288288        RenderInline {SPAN} at (0,0) size 0x0
     
    293293            text run at (0,0) width 115: "In a span"
    294294      RenderBlock (anonymous) at (0,468) size 769x271
    295         RenderInline {SPAN} at (0,0) size 868x234
     295        RenderInline {SPAN} at (0,0) size 848x234
    296296          RenderText {#text} at (0,0) size 179x18
    297297            text run at (0,0) width 60: "Word "
     
    300300            RenderText {#text} at (178,0) size 19x18
    301301              text run at (178,0) width 19: "for"
    302           RenderText {#text} at (216,0) size 25x18
    303             text run at (216,0) width 25: " "
     302          RenderText {#text} at (216,0) size 5x18
     303            text run at (216,0) width 5: " "
    304304          RenderInline {STRONG} at (0,0) size 61x18
    305             RenderText {#text} at (240,0) size 61x18
    306               text run at (240,0) width 61: "elements"
    307           RenderText {#text} at (320,0) size 25x18
    308             text run at (320,0) width 25: " "
     305            RenderText {#text} at (220,0) size 61x18
     306              text run at (220,0) width 61: "elements"
     307          RenderText {#text} at (300,0) size 5x18
     308            text run at (300,0) width 5: " "
    309309          RenderInline {TT} at (0,0) size 48x15
    310             RenderText {#text} at (344,2) size 48x15
    311               text run at (344,2) width 48: "within"
    312           RenderText {#text} at (411,0) size 110x18
    313             text run at (411,0) width 110: " elements too."
    314           RenderBR {BR} at (520,14) size 1x0
     310            RenderText {#text} at (304,2) size 48x15
     311              text run at (304,2) width 48: "within"
     312          RenderText {#text} at (371,0) size 130x18
     313            text run at (371,0) width 130: " elements too."
     314          RenderBR {BR} at (500,14) size 1x0
    315315          RenderText {#text} at (0,18) size 179x18
    316316            text run at (0,18) width 60: "Word "
     
    319319            RenderText {#text} at (178,18) size 19x18
    320320              text run at (178,18) width 19: "for"
    321           RenderText {#text} at (216,18) size 25x18
    322             text run at (216,18) width 25: " "
     321          RenderText {#text} at (216,18) size 5x18
     322            text run at (216,18) width 5: " "
    323323          RenderInline {STRONG} at (0,0) size 61x18
    324             RenderText {#text} at (240,18) size 61x18
    325               text run at (240,18) width 61: "elements"
    326           RenderText {#text} at (320,18) size 25x18
    327             text run at (320,18) width 25: " "
     324            RenderText {#text} at (220,18) size 61x18
     325              text run at (220,18) width 61: "elements"
     326          RenderText {#text} at (300,18) size 5x18
     327            text run at (300,18) width 5: " "
    328328          RenderInline {TT} at (0,0) size 48x15
    329             RenderText {#text} at (344,20) size 48x15
    330               text run at (344,20) width 48: "within"
    331           RenderText {#text} at (411,18) size 106x18
    332             text run at (411,18) width 106: " elements "
    333           RenderText {#text} at (516,18) size 868x36
    334             text run at (516,18) width 352: "too. (with comment between elements and"
     329            RenderText {#text} at (304,20) size 48x15
     330              text run at (304,20) width 48: "within"
     331          RenderText {#text} at (371,18) size 106x18
     332            text run at (371,18) width 106: " elements "
     333          RenderText {#text} at (476,18) size 848x36
     334            text run at (476,18) width 372: "too. (with comment between elements and"
    335335            text run at (0,36) width 26: "too)"
    336336          RenderBR {BR} at (25,50) size 1x0
     
    341341            RenderText {#text} at (178,54) size 19x18
    342342              text run at (178,54) width 19: "for"
    343           RenderText {#text} at (216,54) size 25x18
    344             text run at (216,54) width 25: " "
     343          RenderText {#text} at (216,54) size 5x18
     344            text run at (216,54) width 5: " "
    345345          RenderInline {STRONG} at (0,0) size 61x18
    346             RenderText {#text} at (240,54) size 61x18
    347               text run at (240,54) width 61: "elements"
    348           RenderText {#text} at (320,54) size 25x18
    349             text run at (320,54) width 25: " "
     346            RenderText {#text} at (220,54) size 61x18
     347              text run at (220,54) width 61: "elements"
     348          RenderText {#text} at (300,54) size 5x18
     349            text run at (300,54) width 5: " "
    350350          RenderInline {TT} at (0,0) size 48x15
    351             RenderText {#text} at (344,56) size 48x15
    352               text run at (344,56) width 48: "within"
    353           RenderText {#text} at (411,54) size 62x18
    354             text run at (411,54) width 62: " elements"
    355           RenderText {#text} at (492,54) size 867x36
    356             text run at (492,54) width 375: " too. (with comment (no preceeding space)"
    357             text run at (0,72) width 212: "between elements and too)"
    358           RenderBR {BR} at (211,86) size 1x0
     351            RenderText {#text} at (304,56) size 48x15
     352              text run at (304,56) width 48: "within"
     353          RenderText {#text} at (371,54) size 62x18
     354            text run at (371,54) width 62: " elements"
     355          RenderText {#text} at (452,54) size 847x36
     356            text run at (452,54) width 395: " too. (with comment (no preceeding space)"
     357            text run at (0,72) width 232: "between elements and too)"
     358          RenderBR {BR} at (231,86) size 1x0
    359359          RenderText {#text} at (0,90) size 179x18
    360360            text run at (0,90) width 60: "Word "
     
    363363            RenderText {#text} at (178,90) size 19x18
    364364              text run at (178,90) width 19: "for"
    365           RenderText {#text} at (216,90) size 25x18
    366             text run at (216,90) width 25: " "
     365          RenderText {#text} at (216,90) size 5x18
     366            text run at (216,90) width 5: " "
    367367          RenderInline {STRONG} at (0,0) size 61x18
    368             RenderText {#text} at (240,90) size 61x18
    369               text run at (240,90) width 61: "elements"
    370           RenderText {#text} at (320,90) size 25x18
    371             text run at (320,90) width 25: " "
     368            RenderText {#text} at (220,90) size 61x18
     369              text run at (220,90) width 61: "elements"
     370          RenderText {#text} at (300,90) size 5x18
     371            text run at (300,90) width 5: " "
    372372          RenderInline {TT} at (0,0) size 48x15
    373             RenderText {#text} at (344,92) size 48x15
    374               text run at (344,92) width 48: "within"
    375           RenderText {#text} at (411,90) size 106x18
    376             text run at (411,90) width 106: " elements "
    377           RenderText {#text} at (516,90) size 843x36
    378             text run at (516,90) width 327: "too. (with comment (no trailing space)"
    379             text run at (0,108) width 212: "between elements and too)"
    380           RenderBR {BR} at (211,122) size 1x0
    381           RenderInline {SPAN} at (0,0) size 335x15
     373            RenderText {#text} at (304,92) size 48x15
     374              text run at (304,92) width 48: "within"
     375          RenderText {#text} at (371,90) size 106x18
     376            text run at (371,90) width 106: " elements "
     377          RenderText {#text} at (476,90) size 823x36
     378            text run at (476,90) width 347: "too. (with comment (no trailing space)"
     379            text run at (0,108) width 232: "between elements and too)"
     380          RenderBR {BR} at (231,122) size 1x0
     381          RenderInline {SPAN} at (0,0) size 315x15
    382382            RenderText {#text} at (0,128) size 201x15
    383383              text run at (0,128) width 60: "Word "
     
    386386              RenderText {#text} at (200,128) size 24x15
    387387                text run at (200,128) width 24: "for"
    388             RenderText {#text} at (243,128) size 29x15
    389               text run at (243,128) width 29: " "
     388            RenderText {#text} at (243,128) size 9x15
     389              text run at (243,128) width 9: " "
    390390            RenderInline {STRONG} at (0,0) size 64x15
    391               RenderText {#text} at (271,128) size 64x15
    392                 text run at (271,128) width 64: "elements"
    393           RenderText {#text} at (354,126) size 25x18
    394             text run at (354,126) width 25: " "
     391              RenderText {#text} at (251,128) size 64x15
     392                text run at (251,128) width 64: "elements"
     393          RenderText {#text} at (334,126) size 5x18
     394            text run at (334,126) width 5: " "
    395395          RenderInline {TT} at (0,0) size 47x15
    396             RenderText {#text} at (378,128) size 47x15
    397               text run at (378,128) width 47: "within"
    398           RenderText {#text} at (444,126) size 813x36
    399             text run at (444,126) width 369: " elements too. (with monospace font from"
    400             text run at (0,144) width 138: "Word to elements)"
    401           RenderBR {BR} at (137,158) size 1x0
     396            RenderText {#text} at (338,128) size 47x15
     397              text run at (338,128) width 47: "within"
     398          RenderText {#text} at (404,126) size 793x36
     399            text run at (404,126) width 389: " elements too. (with monospace font from"
     400            text run at (0,144) width 158: "Word to elements)"
     401          RenderBR {BR} at (157,158) size 1x0
    402402          RenderText {#text} at (0,162) size 179x18
    403403            text run at (0,162) width 60: "Word "
    404404            text run at (59,162) width 120: "spacing test "
    405           RenderInline {SPAN} at (0,0) size 229x15
     405          RenderInline {SPAN} at (0,0) size 189x15
    406406            RenderInline {EM} at (0,0) size 24x15
    407407              RenderText {#text} at (178,164) size 24x15
    408408                text run at (178,164) width 24: "for"
    409             RenderText {#text} at (221,164) size 29x15
    410               text run at (221,164) width 29: " "
     409            RenderText {#text} at (221,164) size 9x15
     410              text run at (221,164) width 9: " "
    411411            RenderInline {STRONG} at (0,0) size 63x15
    412               RenderText {#text} at (249,164) size 63x15
    413                 text run at (249,164) width 63: "elements"
    414             RenderText {#text} at (331,164) size 29x15
    415               text run at (331,164) width 29: " "
     412              RenderText {#text} at (229,164) size 63x15
     413                text run at (229,164) width 63: "elements"
     414            RenderText {#text} at (311,164) size 9x15
     415              text run at (311,164) width 9: " "
    416416            RenderInline {TT} at (0,0) size 48x15
    417               RenderText {#text} at (359,164) size 48x15
    418                 text run at (359,164) width 48: "within"
    419           RenderText {#text} at (426,162) size 838x36
    420             text run at (426,162) width 412: " elements too. (with monospace font from for"
    421             text run at (0,180) width 63: "to within)"
    422           RenderBR {BR} at (62,194) size 1x0
     417              RenderText {#text} at (319,164) size 48x15
     418                text run at (319,164) width 48: "within"
     419          RenderText {#text} at (386,162) size 818x36
     420            text run at (386,162) width 432: " elements too. (with monospace font from for"
     421            text run at (0,180) width 83: "to within)"
     422          RenderBR {BR} at (82,194) size 1x0
    423423          RenderText {#text} at (0,198) size 179x18
    424424            text run at (0,198) width 60: "Word "
     
    427427            RenderText {#text} at (178,198) size 19x18
    428428              text run at (178,198) width 19: "for"
    429           RenderText {#text} at (216,198) size 25x18
    430             text run at (216,198) width 25: " "
     429          RenderText {#text} at (216,198) size 5x18
     430            text run at (216,198) width 5: " "
    431431          RenderInline {STRONG} at (0,0) size 61x18
    432             RenderText {#text} at (240,198) size 61x18
    433               text run at (240,198) width 61: "elements"
    434           RenderText {#text} at (320,198) size 25x18
    435             text run at (320,198) width 25: " "
    436           RenderInline {SPAN} at (0,0) size 189x15
     432            RenderText {#text} at (220,198) size 61x18
     433              text run at (220,198) width 61: "elements"
     434          RenderText {#text} at (300,198) size 5x18
     435            text run at (300,198) width 5: " "
     436          RenderInline {SPAN} at (0,0) size 209x15
    437437            RenderInline {TT} at (0,0) size 48x15
    438               RenderText {#text} at (344,200) size 48x15
    439                 text run at (344,200) width 48: "within"
    440             RenderText {#text} at (411,200) size 122x15
    441               text run at (411,200) width 122: " elements too"
    442           RenderText {#text} at (532,198) size 776x36
    443             text run at (532,198) width 244: ". (with monospace font from"
     438              RenderText {#text} at (304,200) size 48x15
     439                text run at (304,200) width 48: "within"
     440            RenderText {#text} at (371,200) size 142x15
     441              text run at (371,200) width 142: " elements too"
     442          RenderText {#text} at (512,198) size 776x36
     443            text run at (512,198) width 264: ". (with monospace font from"
    444444            text run at (0,216) width 148: "elements to too) "
    445445        RenderText {#text} at (0,0) size 0x0
     
    905905            RenderText {#text} at (536,15) size 40x15
    906906              text run at (536,15) width 40: "for"
    907           RenderText {#text} at (595,15) size 34x15
    908             text run at (595,15) width 34: " "
     907          RenderText {#text} at (595,15) size 14x15
     908            text run at (595,15) width 14: " "
    909909          RenderInline {STRONG} at (0,0) size 103x15
    910             RenderText {#text} at (628,15) size 103x15
    911               text run at (628,15) width 103: "elements"
    912           RenderText {#text} at (750,15) size 34x15
    913             text run at (750,15) width 34: " "
    914           RenderInline {TT} at (0,0) size 78x15
    915             RenderText {#text} at (783,15) size 78x15
    916               text run at (783,15) width 78: "within"
    917           RenderText {#text} at (880,15) size 1100x30
    918             text run at (880,15) width 200: " elements too."
    919             text run at (1099,15) width 1: " "
     910            RenderText {#text} at (608,15) size 103x15
     911              text run at (608,15) width 103: "elements"
     912          RenderText {#text} at (730,15) size 14x15
     913            text run at (730,15) width 14: " "
     914          RenderInline {TT} at (0,0) size 78x15
     915            RenderText {#text} at (743,15) size 78x15
     916              text run at (743,15) width 78: "within"
     917          RenderText {#text} at (840,15) size 1060x30
     918            text run at (840,15) width 200: " elements too."
     919            text run at (1059,15) width 1: " "
    920920            text run at (0,30) width 537: "Word and letter   spacing test "
    921921          RenderInline {EM} at (0,0) size 40x15
    922922            RenderText {#text} at (536,30) size 40x15
    923923              text run at (536,30) width 40: "for"
    924           RenderText {#text} at (595,30) size 34x15
    925             text run at (595,30) width 34: " "
     924          RenderText {#text} at (595,30) size 14x15
     925            text run at (595,30) width 14: " "
    926926          RenderInline {STRONG} at (0,0) size 103x15
    927             RenderText {#text} at (628,30) size 103x15
    928               text run at (628,30) width 103: "elements"
    929           RenderText {#text} at (750,30) size 34x15
    930             text run at (750,30) width 34: " "
    931           RenderInline {TT} at (0,0) size 78x15
    932             RenderText {#text} at (783,30) size 78x15
    933               text run at (783,30) width 78: "within"
    934           RenderText {#text} at (880,30) size 149x15
    935             text run at (880,30) width 149: " elements "
    936           RenderText {#text} at (1028,30) size 1745x30
    937             text run at (1028,30) width 697: " too. (with comment between elements and too)"
    938             text run at (1744,30) width 1: " "
     927            RenderText {#text} at (608,30) size 103x15
     928              text run at (608,30) width 103: "elements"
     929          RenderText {#text} at (730,30) size 14x15
     930            text run at (730,30) width 14: " "
     931          RenderInline {TT} at (0,0) size 78x15
     932            RenderText {#text} at (743,30) size 78x15
     933              text run at (743,30) width 78: "within"
     934          RenderText {#text} at (840,30) size 149x15
     935            text run at (840,30) width 149: " elements "
     936          RenderText {#text} at (988,30) size 1705x30
     937            text run at (988,30) width 697: " too. (with comment between elements and too)"
     938            text run at (1704,30) width 1: " "
    939939            text run at (0,45) width 537: "Word and letter   spacing test "
    940940          RenderInline {EM} at (0,0) size 40x15
    941941            RenderText {#text} at (536,45) size 40x15
    942942              text run at (536,45) width 40: "for"
    943           RenderText {#text} at (595,45) size 34x15
    944             text run at (595,45) width 34: " "
     943          RenderText {#text} at (595,45) size 14x15
     944            text run at (595,45) width 14: " "
    945945          RenderInline {STRONG} at (0,0) size 103x15
    946             RenderText {#text} at (628,45) size 103x15
    947               text run at (628,45) width 103: "elements"
    948           RenderText {#text} at (750,45) size 34x15
    949             text run at (750,45) width 34: " "
    950           RenderInline {TT} at (0,0) size 78x15
    951             RenderText {#text} at (783,45) size 78x15
    952               text run at (783,45) width 78: "within"
    953           RenderText {#text} at (880,45) size 116x15
    954             text run at (880,45) width 116: " elements"
    955           RenderText {#text} at (1015,45) size 2073x30
    956             text run at (1015,45) width 1038: " too. (with comment (no preceeding space) between elements and too)"
    957             text run at (2072,45) width 1: " "
     946            RenderText {#text} at (608,45) size 103x15
     947              text run at (608,45) width 103: "elements"
     948          RenderText {#text} at (730,45) size 14x15
     949            text run at (730,45) width 14: " "
     950          RenderInline {TT} at (0,0) size 78x15
     951            RenderText {#text} at (743,45) size 78x15
     952              text run at (743,45) width 78: "within"
     953          RenderText {#text} at (840,45) size 116x15
     954            text run at (840,45) width 116: " elements"
     955          RenderText {#text} at (975,45) size 2033x30
     956            text run at (975,45) width 1038: " too. (with comment (no preceeding space) between elements and too)"
     957            text run at (2032,45) width 1: " "
    958958            text run at (0,60) width 537: "Word and letter   spacing test "
    959959          RenderInline {EM} at (0,0) size 40x15
    960960            RenderText {#text} at (536,60) size 40x15
    961961              text run at (536,60) width 40: "for"
    962           RenderText {#text} at (595,60) size 34x15
    963             text run at (595,60) width 34: " "
     962          RenderText {#text} at (595,60) size 14x15
     963            text run at (595,60) width 14: " "
    964964          RenderInline {STRONG} at (0,0) size 103x15
    965             RenderText {#text} at (628,60) size 103x15
    966               text run at (628,60) width 103: "elements"
    967           RenderText {#text} at (750,60) size 34x15
    968             text run at (750,60) width 34: " "
    969           RenderInline {TT} at (0,0) size 78x15
    970             RenderText {#text} at (783,60) size 78x15
    971               text run at (783,60) width 78: "within"
    972           RenderText {#text} at (880,60) size 149x15
    973             text run at (880,60) width 149: " elements "
    974           RenderText {#text} at (1028,60) size 1020x15
    975             text run at (1028,60) width 1000: "too. (with comment (no trailing space) between elements and too)"
    976             text run at (2047,60) width 1: " "
    977           RenderInline {SPAN} at (0,0) size 731x15
     965            RenderText {#text} at (608,60) size 103x15
     966              text run at (608,60) width 103: "elements"
     967          RenderText {#text} at (730,60) size 14x15
     968            text run at (730,60) width 14: " "
     969          RenderInline {TT} at (0,0) size 78x15
     970            RenderText {#text} at (743,60) size 78x15
     971              text run at (743,60) width 78: "within"
     972          RenderText {#text} at (840,60) size 149x15
     973            text run at (840,60) width 149: " elements "
     974          RenderText {#text} at (988,60) size 1020x15
     975            text run at (988,60) width 1000: "too. (with comment (no trailing space) between elements and too)"
     976            text run at (2007,60) width 1: " "
     977          RenderInline {SPAN} at (0,0) size 711x15
    978978            RenderText {#text} at (0,75) size 537x15
    979979              text run at (0,75) width 537: "Word and letter   spacing test "
     
    981981              RenderText {#text} at (536,75) size 40x15
    982982                text run at (536,75) width 40: "for"
    983             RenderText {#text} at (595,75) size 34x15
    984               text run at (595,75) width 34: " "
     983            RenderText {#text} at (595,75) size 14x15
     984              text run at (595,75) width 14: " "
    985985            RenderInline {STRONG} at (0,0) size 103x15
    986               RenderText {#text} at (628,75) size 103x15
    987                 text run at (628,75) width 103: "elements"
    988           RenderText {#text} at (750,75) size 34x15
    989             text run at (750,75) width 34: " "
    990           RenderInline {TT} at (0,0) size 78x15
    991             RenderText {#text} at (783,75) size 78x15
    992               text run at (783,75) width 78: "within"
    993           RenderText {#text} at (880,75) size 1803x30
    994             text run at (880,75) width 903: " elements too. (with monospace font from Word to elements)"
    995             text run at (1802,75) width 1: " "
     986              RenderText {#text} at (608,75) size 103x15
     987                text run at (608,75) width 103: "elements"
     988          RenderText {#text} at (730,75) size 14x15
     989            text run at (730,75) width 14: " "
     990          RenderInline {TT} at (0,0) size 78x15
     991            RenderText {#text} at (743,75) size 78x15
     992              text run at (743,75) width 78: "within"
     993          RenderText {#text} at (840,75) size 1763x30
     994            text run at (840,75) width 903: " elements too. (with monospace font from Word to elements)"
     995            text run at (1762,75) width 1: " "
    996996            text run at (0,90) width 537: "Word and letter   spacing test "
    997           RenderInline {SPAN} at (0,0) size 325x15
     997          RenderInline {SPAN} at (0,0) size 285x15
    998998            RenderInline {EM} at (0,0) size 40x15
    999999              RenderText {#text} at (536,90) size 40x15
    10001000                text run at (536,90) width 40: "for"
    1001             RenderText {#text} at (595,90) size 34x15
    1002               text run at (595,90) width 34: " "
     1001            RenderText {#text} at (595,90) size 14x15
     1002              text run at (595,90) width 14: " "
    10031003            RenderInline {STRONG} at (0,0) size 103x15
    1004               RenderText {#text} at (628,90) size 103x15
    1005                 text run at (628,90) width 103: "elements"
    1006             RenderText {#text} at (750,90) size 34x15
    1007               text run at (750,90) width 34: " "
     1004              RenderText {#text} at (608,90) size 103x15
     1005                text run at (608,90) width 103: "elements"
     1006            RenderText {#text} at (730,90) size 14x15
     1007              text run at (730,90) width 14: " "
    10081008            RenderInline {TT} at (0,0) size 78x15
    1009               RenderText {#text} at (783,90) size 78x15
    1010                 text run at (783,90) width 78: "within"
    1011           RenderText {#text} at (880,90) size 1765x30
    1012             text run at (880,90) width 865: " elements too. (with monospace font from for to within)"
    1013             text run at (1764,90) width 1: " "
     1009              RenderText {#text} at (743,90) size 78x15
     1010                text run at (743,90) width 78: "within"
     1011          RenderText {#text} at (840,90) size 1725x30
     1012            text run at (840,90) width 865: " elements too. (with monospace font from for to within)"
     1013            text run at (1724,90) width 1: " "
    10141014            text run at (0,105) width 537: "Word and letter   spacing test "
    10151015          RenderInline {EM} at (0,0) size 40x15
    10161016            RenderText {#text} at (536,105) size 40x15
    10171017              text run at (536,105) width 40: "for"
    1018           RenderText {#text} at (595,105) size 34x15
    1019             text run at (595,105) width 34: " "
     1018          RenderText {#text} at (595,105) size 14x15
     1019            text run at (595,105) width 14: " "
    10201020          RenderInline {STRONG} at (0,0) size 103x15
    1021             RenderText {#text} at (628,105) size 103x15
    1022               text run at (628,105) width 103: "elements"
    1023           RenderText {#text} at (750,105) size 34x15
    1024             text run at (750,105) width 34: " "
     1021            RenderText {#text} at (608,105) size 103x15
     1022              text run at (608,105) width 103: "elements"
     1023          RenderText {#text} at (730,105) size 14x15
     1024            text run at (730,105) width 14: " "
    10251025          RenderInline {SPAN} at (0,0) size 284x15
    10261026            RenderInline {TT} at (0,0) size 78x15
    1027               RenderText {#text} at (783,105) size 78x15
    1028                 text run at (783,105) width 78: "within"
    1029             RenderText {#text} at (880,105) size 187x15
    1030               text run at (880,105) width 187: " elements too"
    1031           RenderText {#text} at (1066,105) size 724x15
    1032             text run at (1066,105) width 704: ". (with monospace font from elements to too)"
    1033             text run at (1789,105) width 1: " "
     1027              RenderText {#text} at (743,105) size 78x15
     1028                text run at (743,105) width 78: "within"
     1029            RenderText {#text} at (840,105) size 187x15
     1030              text run at (840,105) width 187: " elements too"
     1031          RenderText {#text} at (1026,105) size 724x15
     1032            text run at (1026,105) width 704: ". (with monospace font from elements to too)"
     1033            text run at (1749,105) width 1: " "
    10341034      RenderBlock (anonymous) at (0,1595) size 769x194
    10351035        RenderBR {BR} at (1450,0) size 1x18
     
    10451045            RenderText {#text} at (536,15) size 40x15
    10461046              text run at (536,15) width 40: "for"
    1047           RenderText {#text} at (595,15) size 34x15
    1048             text run at (595,15) width 34: " "
     1047          RenderText {#text} at (595,15) size 14x15
     1048            text run at (595,15) width 14: " "
    10491049          RenderInline {STRONG} at (0,0) size 103x15
    1050             RenderText {#text} at (628,15) size 103x15
    1051               text run at (628,15) width 103: "elements"
    1052           RenderText {#text} at (750,15) size 34x15
    1053             text run at (750,15) width 34: " "
    1054           RenderInline {TT} at (0,0) size 78x15
    1055             RenderText {#text} at (783,15) size 78x15
    1056               text run at (783,15) width 78: "within"
    1057           RenderText {#text} at (880,15) size 1100x30
    1058             text run at (880,15) width 200: " elements too."
    1059             text run at (1099,15) width 1: " "
     1050            RenderText {#text} at (608,15) size 103x15
     1051              text run at (608,15) width 103: "elements"
     1052          RenderText {#text} at (730,15) size 14x15
     1053            text run at (730,15) width 14: " "
     1054          RenderInline {TT} at (0,0) size 78x15
     1055            RenderText {#text} at (743,15) size 78x15
     1056              text run at (743,15) width 78: "within"
     1057          RenderText {#text} at (840,15) size 1060x30
     1058            text run at (840,15) width 200: " elements too."
     1059            text run at (1059,15) width 1: " "
    10601060            text run at (0,30) width 537: "Word and letter   spacing test "
    10611061          RenderInline {EM} at (0,0) size 40x15
    10621062            RenderText {#text} at (536,30) size 40x15
    10631063              text run at (536,30) width 40: "for"
    1064           RenderText {#text} at (595,30) size 34x15
    1065             text run at (595,30) width 34: " "
     1064          RenderText {#text} at (595,30) size 14x15
     1065            text run at (595,30) width 14: " "
    10661066          RenderInline {STRONG} at (0,0) size 103x15
    1067             RenderText {#text} at (628,30) size 103x15
    1068               text run at (628,30) width 103: "elements"
    1069           RenderText {#text} at (750,30) size 34x15
    1070             text run at (750,30) width 34: " "
    1071           RenderInline {TT} at (0,0) size 78x15
    1072             RenderText {#text} at (783,30) size 78x15
    1073               text run at (783,30) width 78: "within"
    1074           RenderText {#text} at (880,30) size 149x15
    1075             text run at (880,30) width 149: " elements "
    1076           RenderText {#text} at (1028,30) size 1745x30
    1077             text run at (1028,30) width 697: " too. (with comment between elements and too)"
    1078             text run at (1744,30) width 1: " "
     1067            RenderText {#text} at (608,30) size 103x15
     1068              text run at (608,30) width 103: "elements"
     1069          RenderText {#text} at (730,30) size 14x15
     1070            text run at (730,30) width 14: " "
     1071          RenderInline {TT} at (0,0) size 78x15
     1072            RenderText {#text} at (743,30) size 78x15
     1073              text run at (743,30) width 78: "within"
     1074          RenderText {#text} at (840,30) size 149x15
     1075            text run at (840,30) width 149: " elements "
     1076          RenderText {#text} at (988,30) size 1705x30
     1077            text run at (988,30) width 697: " too. (with comment between elements and too)"
     1078            text run at (1704,30) width 1: " "
    10791079            text run at (0,45) width 537: "Word and letter   spacing test "
    10801080          RenderInline {EM} at (0,0) size 40x15
    10811081            RenderText {#text} at (536,45) size 40x15
    10821082              text run at (536,45) width 40: "for"
    1083           RenderText {#text} at (595,45) size 34x15
    1084             text run at (595,45) width 34: " "
     1083          RenderText {#text} at (595,45) size 14x15
     1084            text run at (595,45) width 14: " "
    10851085          RenderInline {STRONG} at (0,0) size 103x15
    1086             RenderText {#text} at (628,45) size 103x15
    1087               text run at (628,45) width 103: "elements"
    1088           RenderText {#text} at (750,45) size 34x15
    1089             text run at (750,45) width 34: " "
    1090           RenderInline {TT} at (0,0) size 78x15
    1091             RenderText {#text} at (783,45) size 78x15
    1092               text run at (783,45) width 78: "within"
    1093           RenderText {#text} at (880,45) size 116x15
    1094             text run at (880,45) width 116: " elements"
    1095           RenderText {#text} at (1015,45) size 2073x30
    1096             text run at (1015,45) width 1038: " too. (with comment (no preceeding space) between elements and too)"
    1097             text run at (2072,45) width 1: " "
     1086            RenderText {#text} at (608,45) size 103x15
     1087              text run at (608,45) width 103: "elements"
     1088          RenderText {#text} at (730,45) size 14x15
     1089            text run at (730,45) width 14: " "
     1090          RenderInline {TT} at (0,0) size 78x15
     1091            RenderText {#text} at (743,45) size 78x15
     1092              text run at (743,45) width 78: "within"
     1093          RenderText {#text} at (840,45) size 116x15
     1094            text run at (840,45) width 116: " elements"
     1095          RenderText {#text} at (975,45) size 2033x30
     1096            text run at (975,45) width 1038: " too. (with comment (no preceeding space) between elements and too)"
     1097            text run at (2032,45) width 1: " "
    10981098            text run at (0,60) width 537: "Word and letter   spacing test "
    10991099          RenderInline {EM} at (0,0) size 40x15
    11001100            RenderText {#text} at (536,60) size 40x15
    11011101              text run at (536,60) width 40: "for"
    1102           RenderText {#text} at (595,60) size 34x15
    1103             text run at (595,60) width 34: " "
     1102          RenderText {#text} at (595,60) size 14x15
     1103            text run at (595,60) width 14: " "
    11041104          RenderInline {STRONG} at (0,0) size 103x15
    1105             RenderText {#text} at (628,60) size 103x15
    1106               text run at (628,60) width 103: "elements"
    1107           RenderText {#text} at (750,60) size 34x15
    1108             text run at (750,60) width 34: " "
    1109           RenderInline {TT} at (0,0) size 78x15
    1110             RenderText {#text} at (783,60) size 78x15
    1111               text run at (783,60) width 78: "within"
    1112           RenderText {#text} at (880,60) size 149x15
    1113             text run at (880,60) width 149: " elements "
    1114           RenderText {#text} at (1028,60) size 1020x15
    1115             text run at (1028,60) width 1000: "too. (with comment (no trailing space) between elements and too)"
    1116             text run at (2047,60) width 1: " "
    1117           RenderInline {SPAN} at (0,0) size 731x15
     1105            RenderText {#text} at (608,60) size 103x15
     1106              text run at (608,60) width 103: "elements"
     1107          RenderText {#text} at (730,60) size 14x15
     1108            text run at (730,60) width 14: " "
     1109          RenderInline {TT} at (0,0) size 78x15
     1110            RenderText {#text} at (743,60) size 78x15
     1111              text run at (743,60) width 78: "within"
     1112          RenderText {#text} at (840,60) size 149x15
     1113            text run at (840,60) width 149: " elements "
     1114          RenderText {#text} at (988,60) size 1020x15
     1115            text run at (988,60) width 1000: "too. (with comment (no trailing space) between elements and too)"
     1116            text run at (2007,60) width 1: " "
     1117          RenderInline {SPAN} at (0,0) size 711x15
    11181118            RenderText {#text} at (0,75) size 537x15
    11191119              text run at (0,75) width 537: "Word and letter   spacing test "
     
    11211121              RenderText {#text} at (536,75) size 40x15
    11221122                text run at (536,75) width 40: "for"
    1123             RenderText {#text} at (595,75) size 34x15
    1124               text run at (595,75) width 34: " "
     1123            RenderText {#text} at (595,75) size 14x15
     1124              text run at (595,75) width 14: " "
    11251125            RenderInline {STRONG} at (0,0) size 103x15
    1126               RenderText {#text} at (628,75) size 103x15
    1127                 text run at (628,75) width 103: "elements"
    1128           RenderText {#text} at (750,75) size 34x15
    1129             text run at (750,75) width 34: " "
    1130           RenderInline {TT} at (0,0) size 78x15
    1131             RenderText {#text} at (783,75) size 78x15
    1132               text run at (783,75) width 78: "within"
    1133           RenderText {#text} at (880,75) size 1803x30
    1134             text run at (880,75) width 903: " elements too. (with monospace font from Word to elements)"
    1135             text run at (1802,75) width 1: " "
     1126              RenderText {#text} at (608,75) size 103x15
     1127                text run at (608,75) width 103: "elements"
     1128          RenderText {#text} at (730,75) size 14x15
     1129            text run at (730,75) width 14: " "
     1130          RenderInline {TT} at (0,0) size 78x15
     1131            RenderText {#text} at (743,75) size 78x15
     1132              text run at (743,75) width 78: "within"
     1133          RenderText {#text} at (840,75) size 1763x30
     1134            text run at (840,75) width 903: " elements too. (with monospace font from Word to elements)"
     1135            text run at (1762,75) width 1: " "
    11361136            text run at (0,90) width 537: "Word and letter   spacing test "
    1137           RenderInline {SPAN} at (0,0) size 325x15
     1137          RenderInline {SPAN} at (0,0) size 285x15
    11381138            RenderInline {EM} at (0,0) size 40x15
    11391139              RenderText {#text} at (536,90) size 40x15
    11401140                text run at (536,90) width 40: "for"
    1141             RenderText {#text} at (595,90) size 34x15
    1142               text run at (595,90) width 34: " "
     1141            RenderText {#text} at (595,90) size 14x15
     1142              text run at (595,90) width 14: " "
    11431143            RenderInline {STRONG} at (0,0) size 103x15
    1144               RenderText {#text} at (628,90) size 103x15
    1145                 text run at (628,90) width 103: "elements"
    1146             RenderText {#text} at (750,90) size 34x15
    1147               text run at (750,90) width 34: " "
     1144              RenderText {#text} at (608,90) size 103x15
     1145                text run at (608,90) width 103: "elements"
     1146            RenderText {#text} at (730,90) size 14x15
     1147              text run at (730,90) width 14: " "
    11481148            RenderInline {TT} at (0,0) size 78x15
    1149               RenderText {#text} at (783,90) size 78x15
    1150                 text run at (783,90) width 78: "within"
    1151           RenderText {#text} at (880,90) size 1765x30
    1152             text run at (880,90) width 865: " elements too. (with monospace font from for to within)"
    1153             text run at (1764,90) width 1: " "
     1149              RenderText {#text} at (743,90) size 78x15
     1150                text run at (743,90) width 78: "within"
     1151          RenderText {#text} at (840,90) size 1725x30
     1152            text run at (840,90) width 865: " elements too. (with monospace font from for to within)"
     1153            text run at (1724,90) width 1: " "
    11541154            text run at (0,105) width 537: "Word and letter   spacing test "
    11551155          RenderInline {EM} at (0,0) size 40x15
    11561156            RenderText {#text} at (536,105) size 40x15
    11571157              text run at (536,105) width 40: "for"
    1158           RenderText {#text} at (595,105) size 34x15
    1159             text run at (595,105) width 34: " "
     1158          RenderText {#text} at (595,105) size 14x15
     1159            text run at (595,105) width 14: " "
    11601160          RenderInline {STRONG} at (0,0) size 103x15
    1161             RenderText {#text} at (628,105) size 103x15
    1162               text run at (628,105) width 103: "elements"
    1163           RenderText {#text} at (750,105) size 34x15
    1164             text run at (750,105) width 34: " "
     1161            RenderText {#text} at (608,105) size 103x15
     1162              text run at (608,105) width 103: "elements"
     1163          RenderText {#text} at (730,105) size 14x15
     1164            text run at (730,105) width 14: " "
    11651165          RenderInline {SPAN} at (0,0) size 284x15
    11661166            RenderInline {TT} at (0,0) size 78x15
    1167               RenderText {#text} at (783,105) size 78x15
    1168                 text run at (783,105) width 78: "within"
    1169             RenderText {#text} at (880,105) size 187x15
    1170               text run at (880,105) width 187: " elements too"
    1171           RenderText {#text} at (1066,105) size 724x15
    1172             text run at (1066,105) width 704: ". (with monospace font from elements to too)"
    1173             text run at (1789,105) width 1: " "
     1167              RenderText {#text} at (743,105) size 78x15
     1168                text run at (743,105) width 78: "within"
     1169            RenderText {#text} at (840,105) size 187x15
     1170              text run at (840,105) width 187: " elements too"
     1171          RenderText {#text} at (1026,105) size 724x15
     1172            text run at (1026,105) width 704: ". (with monospace font from elements to too)"
     1173            text run at (1749,105) width 1: " "
    11741174      RenderBlock (anonymous) at (0,1968) size 769x19
    11751175        RenderBR {BR} at (0,0) size 0x18
     
    11811181            text run at (0,0) width 160: "In a span"
    11821182      RenderBlock (anonymous) at (0,2046) size 769x343
    1183         RenderInline {SPAN} at (0,0) size 862x342
     1183        RenderInline {SPAN} at (0,0) size 822x342
    11841184          RenderText {#text} at (0,0) size 428x18
    11851185            text run at (0,0) width 244: "Word and letter "
     
    11881188            RenderText {#text} at (427,0) size 34x18
    11891189              text run at (427,0) width 34: "for"
    1190           RenderText {#text} at (480,0) size 30x18
    1191             text run at (480,0) width 30: " "
     1190          RenderText {#text} at (480,0) size 10x18
     1191            text run at (480,0) width 10: " "
    11921192          RenderInline {STRONG} at (0,0) size 101x18
    1193             RenderText {#text} at (509,0) size 101x18
    1194               text run at (509,0) width 101: "elements"
    1195           RenderText {#text} at (629,0) size 30x18
    1196             text run at (629,0) width 30: " "
    1197           RenderInline {TT} at (0,0) size 78x15
    1198             RenderText {#text} at (658,2) size 78x15
    1199               text run at (658,2) width 78: "within"
    1200           RenderText {#text} at (755,0) size 862x36
    1201             text run at (755,0) width 107: " elements"
     1193            RenderText {#text} at (489,0) size 101x18
     1194              text run at (489,0) width 101: "elements"
     1195          RenderText {#text} at (609,0) size 10x18
     1196            text run at (609,0) width 10: " "
     1197          RenderInline {TT} at (0,0) size 78x15
     1198            RenderText {#text} at (618,2) size 78x15
     1199              text run at (618,2) width 78: "within"
     1200          RenderText {#text} at (715,0) size 822x36
     1201            text run at (715,0) width 107: " elements"
    12021202            text run at (0,18) width 45: "too."
    12031203          RenderBR {BR} at (44,32) size 1x0
     
    12081208            RenderText {#text} at (427,36) size 34x18
    12091209              text run at (427,36) width 34: "for"
    1210           RenderText {#text} at (480,36) size 30x18
    1211             text run at (480,36) width 30: " "
     1210          RenderText {#text} at (480,36) size 10x18
     1211            text run at (480,36) width 10: " "
    12121212          RenderInline {STRONG} at (0,0) size 101x18
    1213             RenderText {#text} at (509,36) size 101x18
    1214               text run at (509,36) width 101: "elements"
    1215           RenderText {#text} at (629,36) size 30x18
    1216             text run at (629,36) width 30: " "
    1217           RenderInline {TT} at (0,0) size 78x15
    1218             RenderText {#text} at (658,38) size 78x15
    1219               text run at (658,38) width 78: "within"
    1220           RenderText {#text} at (755,36) size 107x18
    1221             text run at (755,36) width 107: " elements"
    1222           RenderText {#text} at (0,54) size 621x18
    1223             text run at (0,54) width 621: "too. (with comment between elements and too)"
    1224           RenderBR {BR} at (620,68) size 1x0
     1213            RenderText {#text} at (489,36) size 101x18
     1214              text run at (489,36) width 101: "elements"
     1215          RenderText {#text} at (609,36) size 10x18
     1216            text run at (609,36) width 10: " "
     1217          RenderInline {TT} at (0,0) size 78x15
     1218            RenderText {#text} at (618,38) size 78x15
     1219              text run at (618,38) width 78: "within"
     1220          RenderText {#text} at (715,36) size 107x18
     1221            text run at (715,36) width 107: " elements"
     1222          RenderText {#text} at (0,54) size 641x18
     1223            text run at (0,54) width 641: "too. (with comment between elements and too)"
     1224          RenderBR {BR} at (640,68) size 1x0
    12251225          RenderText {#text} at (0,72) size 428x18
    12261226            text run at (0,72) width 244: "Word and letter "
     
    12291229            RenderText {#text} at (427,72) size 34x18
    12301230              text run at (427,72) width 34: "for"
    1231           RenderText {#text} at (480,72) size 30x18
    1232             text run at (480,72) width 30: " "
     1231          RenderText {#text} at (480,72) size 10x18
     1232            text run at (480,72) width 10: " "
    12331233          RenderInline {STRONG} at (0,0) size 101x18
    1234             RenderText {#text} at (509,72) size 101x18
    1235               text run at (509,72) width 101: "elements"
    1236           RenderText {#text} at (629,72) size 30x18
    1237             text run at (629,72) width 30: " "
    1238           RenderInline {TT} at (0,0) size 78x15
    1239             RenderText {#text} at (658,74) size 78x15
    1240               text run at (658,74) width 78: "within"
    1241           RenderText {#text} at (755,72) size 107x18
    1242             text run at (755,72) width 107: " elements"
    1243           RenderText {#text} at (0,90) size 668x36
    1244             text run at (0,90) width 668: "too. (with comment (no preceeding space) between"
    1245             text run at (0,108) width 219: "elements and too)"
    1246           RenderBR {BR} at (218,122) size 1x0
     1234            RenderText {#text} at (489,72) size 101x18
     1235              text run at (489,72) width 101: "elements"
     1236          RenderText {#text} at (609,72) size 10x18
     1237            text run at (609,72) width 10: " "
     1238          RenderInline {TT} at (0,0) size 78x15
     1239            RenderText {#text} at (618,74) size 78x15
     1240              text run at (618,74) width 78: "within"
     1241          RenderText {#text} at (715,72) size 107x18
     1242            text run at (715,72) width 107: " elements"
     1243          RenderText {#text} at (0,90) size 688x36
     1244            text run at (0,90) width 688: "too. (with comment (no preceeding space) between"
     1245            text run at (0,108) width 239: "elements and too)"
     1246          RenderBR {BR} at (238,122) size 1x0
    12471247          RenderText {#text} at (0,126) size 428x18
    12481248            text run at (0,126) width 244: "Word and letter "
     
    12511251            RenderText {#text} at (427,126) size 34x18
    12521252              text run at (427,126) width 34: "for"
    1253           RenderText {#text} at (480,126) size 30x18
    1254             text run at (480,126) width 30: " "
     1253          RenderText {#text} at (480,126) size 10x18
     1254            text run at (480,126) width 10: " "
    12551255          RenderInline {STRONG} at (0,0) size 101x18
    1256             RenderText {#text} at (509,126) size 101x18
    1257               text run at (509,126) width 101: "elements"
    1258           RenderText {#text} at (629,126) size 30x18
    1259             text run at (629,126) width 30: " "
    1260           RenderInline {TT} at (0,0) size 78x15
    1261             RenderText {#text} at (658,128) size 78x15
    1262               text run at (658,128) width 78: "within"
    1263           RenderText {#text} at (755,126) size 107x18
    1264             text run at (755,126) width 107: " elements"
    1265           RenderText {#text} at (0,144) size 634x36
    1266             text run at (0,144) width 634: "too. (with comment (no trailing space) between"
    1267             text run at (0,162) width 219: "elements and too)"
    1268           RenderBR {BR} at (218,176) size 1x0
    1269           RenderInline {SPAN} at (0,0) size 665x15
     1256            RenderText {#text} at (489,126) size 101x18
     1257              text run at (489,126) width 101: "elements"
     1258          RenderText {#text} at (609,126) size 10x18
     1259            text run at (609,126) width 10: " "
     1260          RenderInline {TT} at (0,0) size 78x15
     1261            RenderText {#text} at (618,128) size 78x15
     1262              text run at (618,128) width 78: "within"
     1263          RenderText {#text} at (715,126) size 107x18
     1264            text run at (715,126) width 107: " elements"
     1265          RenderText {#text} at (0,144) size 654x36
     1266            text run at (0,144) width 654: "too. (with comment (no trailing space) between"
     1267            text run at (0,162) width 239: "elements and too)"
     1268          RenderBR {BR} at (238,176) size 1x0
     1269          RenderInline {SPAN} at (0,0) size 645x15
    12701270            RenderText {#text} at (0,182) size 472x15
    12711271              text run at (0,182) width 265: "Word and letter "
     
    12741274              RenderText {#text} at (471,182) size 39x15
    12751275                text run at (471,182) width 39: "for"
    1276             RenderText {#text} at (529,182) size 34x15
    1277               text run at (529,182) width 34: " "
     1276            RenderText {#text} at (529,182) size 14x15
     1277              text run at (529,182) width 14: " "
    12781278            RenderInline {STRONG} at (0,0) size 103x15
    1279               RenderText {#text} at (562,182) size 103x15
    1280                 text run at (562,182) width 103: "elements"
    1281           RenderText {#text} at (684,180) size 30x18
    1282             text run at (684,180) width 30: " "
    1283           RenderInline {TT} at (0,0) size 78x15
    1284             RenderText {#text} at (713,182) size 78x15
    1285               text run at (713,182) width 78: "within"
    1286           RenderText {#text} at (0,198) size 675x36
    1287             text run at (0,198) width 675: "elements too. (with monospace font from Word to"
     1279              RenderText {#text} at (542,182) size 103x15
     1280                text run at (542,182) width 103: "elements"
     1281          RenderText {#text} at (664,180) size 10x18
     1282            text run at (664,180) width 10: " "
     1283          RenderInline {TT} at (0,0) size 78x15
     1284            RenderText {#text} at (673,182) size 78x15
     1285              text run at (673,182) width 78: "within"
     1286          RenderText {#text} at (0,198) size 695x36
     1287            text run at (0,198) width 695: "elements too. (with monospace font from Word to"
    12881288            text run at (0,216) width 108: "elements)"
    12891289          RenderBR {BR} at (107,230) size 1x0
     
    12911291            text run at (0,234) width 244: "Word and letter "
    12921292            text run at (243,234) width 185: "spacing test "
    1293           RenderInline {SPAN} at (0,0) size 324x15
     1293          RenderInline {SPAN} at (0,0) size 284x15
    12941294            RenderInline {EM} at (0,0) size 39x15
    12951295              RenderText {#text} at (427,236) size 39x15
    12961296                text run at (427,236) width 39: "for"
    1297             RenderText {#text} at (485,236) size 34x15
    1298               text run at (485,236) width 34: " "
     1297            RenderText {#text} at (485,236) size 14x15
     1298              text run at (485,236) width 14: " "
    12991299            RenderInline {STRONG} at (0,0) size 103x15
    1300               RenderText {#text} at (518,236) size 103x15
    1301                 text run at (518,236) width 103: "elements"
    1302             RenderText {#text} at (640,236) size 34x15
    1303               text run at (640,236) width 34: " "
     1300              RenderText {#text} at (498,236) size 103x15
     1301                text run at (498,236) width 103: "elements"
     1302            RenderText {#text} at (620,236) size 14x15
     1303              text run at (620,236) width 14: " "
    13041304            RenderInline {TT} at (0,0) size 78x15
    1305               RenderText {#text} at (673,236) size 78x15
    1306                 text run at (673,236) width 78: "within"
    1307           RenderText {#text} at (0,252) size 654x36
    1308             text run at (0,252) width 654: "elements too. (with monospace font from for to"
     1305              RenderText {#text} at (633,236) size 78x15
     1306                text run at (633,236) width 78: "within"
     1307          RenderText {#text} at (0,252) size 674x36
     1308            text run at (0,252) width 674: "elements too. (with monospace font from for to"
    13091309            text run at (0,270) width 82: "within)"
    13101310          RenderBR {BR} at (81,284) size 1x0
     
    13151315            RenderText {#text} at (427,288) size 34x18
    13161316              text run at (427,288) width 34: "for"
    1317           RenderText {#text} at (480,288) size 30x18
    1318             text run at (480,288) width 30: " "
     1317          RenderText {#text} at (480,288) size 10x18
     1318            text run at (480,288) width 10: " "
    13191319          RenderInline {STRONG} at (0,0) size 101x18
    1320             RenderText {#text} at (509,288) size 101x18
    1321               text run at (509,288) width 101: "elements"
    1322           RenderText {#text} at (629,288) size 30x18
    1323             text run at (629,288) width 30: " "
    1324           RenderInline {SPAN} at (0,0) size 736x33
     1320            RenderText {#text} at (489,288) size 101x18
     1321              text run at (489,288) width 101: "elements"
     1322          RenderText {#text} at (609,288) size 10x18
     1323            text run at (609,288) width 10: " "
     1324          RenderInline {SPAN} at (0,0) size 696x33
    13251325            RenderInline {TT} at (0,0) size 78x15
    1326               RenderText {#text} at (658,290) size 78x15
    1327                 text run at (658,290) width 78: "within"
    1328             RenderText {#text} at (0,308) size 154x15
    1329               text run at (0,308) width 154: "elements too"
    1330           RenderText {#text} at (153,306) size 709x36
    1331             text run at (153,306) width 556: ". (with monospace font from elements to"
     1326              RenderText {#text} at (618,290) size 78x15
     1327                text run at (618,290) width 78: "within"
     1328            RenderText {#text} at (0,308) size 174x15
     1329              text run at (0,308) width 174: "elements too"
     1330          RenderText {#text} at (173,306) size 749x36
     1331            text run at (173,306) width 576: ". (with monospace font from elements to"
    13321332            text run at (0,324) width 46: "too)"
    13331333        RenderText {#text} at (0,0) size 0x0
  • trunk/LayoutTests/platform/mac/fast/text/whitespace/span-in-word-space-causes-overflow-expected.txt

    r177774 r209910  
    1010          RenderText {#text} at (151,0) size 21x18
    1111            text run at (151,0) width 21: "not"
    12         RenderText {#text} at (0,18) size 134x18
    13           text run at (0,18) width 134: "even be tolerated."
     12        RenderText {#text} at (0,18) size 154x18
     13          text run at (0,18) width 154: "even be tolerated."
  • trunk/LayoutTests/platform/mac/fast/text/word-space-expected.txt

    r192660 r209910  
    4848          RenderText {#text} at (3,3) size 12x18
    4949            text run at (3,3) width 12: "A"
    50         RenderText {#text} at (64,3) size 55x18
    51           text run at (64,3) width 55: " "
     50        RenderText {#text} at (64,3) size 5x18
     51          text run at (64,3) width 5: " "
    5252        RenderInline {SPAN} at (0,0) size 12x18
    53           RenderText {#text} at (118,3) size 12x18
    54             text run at (118,3) width 12: "B"
     53          RenderText {#text} at (68,3) size 12x18
     54            text run at (68,3) width 12: "B"
    5555      RenderBlock (floating) {DIV} at (0,230) size 83x24 [border: (3px solid #000000)]
    5656        RenderInline {SPAN} at (0,0) size 12x18
  • trunk/LayoutTests/platform/mac/svg/custom/svg-fonts-in-html-expected.txt

    r199034 r209910  
    2222layer at (173,47) size 454x188
    2323  RenderBlock (positioned) {H1} at (0,15) size 454x189 [color=#DD9955]
    24     RenderInline {SPAN} at (0,0) size 354x190
    25       RenderText {#text} at (50,-1) size 354x190
    26         text run at (50,-1) width 354: "CSS ZEN"
     24    RenderInline {SPAN} at (0,0) size 341x190
     25      RenderText {#text} at (64,-1) size 341x190
     26        text run at (64,-1) width 326: "CSS ZEN"
    2727        text run at (56,93) width 341: "GARDEN"
    2828layer at (173,119) size 454x21
  • trunk/LayoutTests/platform/mac/svg/custom/svg-fonts-word-spacing-expected.txt

    r192660 r209910  
    2222          RenderText {#text} at (125,1) size 14x18
    2323            text run at (125,1) width 14: "ab"
    24         RenderText {#text} at (138,1) size 32x18
    25           text run at (138,1) width 32: "c abc"
     24        RenderText {#text} at (138,1) size 132x18
     25          text run at (138,1) width 132: "c abc"
    2626      RenderBlock {P} at (0,186) size 784x20
    2727        RenderText {#text} at (0,1) size 126x18
     
    3333          RenderText {#text} at (132,1) size 7x18
    3434            text run at (132,1) width 7: "b"
    35         RenderText {#text} at (138,1) size 32x18
    36           text run at (138,1) width 32: "c abc"
     35        RenderText {#text} at (138,1) size 132x18
     36          text run at (138,1) width 132: "c abc"
    3737      RenderBlock {P} at (0,224) size 784x20
    3838        RenderText {#text} at (0,1) size 126x18
     
    4949          text run at (244,1) width 26: " abc"
    5050      RenderBlock {P} at (0,262) size 784x20
    51         RenderText {#text} at (0,1) size 33x18
    52           text run at (0,1) width 33: "abc a"
     51        RenderText {#text} at (0,1) size 133x18
     52          text run at (0,1) width 133: "abc a"
    5353        RenderInline {SPAN} at (0,0) size 7x18
    54           RenderText {#text} at (32,1) size 7x18
    55             text run at (32,1) width 7: "b"
     54          RenderText {#text} at (132,1) size 7x18
     55            text run at (132,1) width 7: "b"
    5656        RenderInline {SPAN} at (0,0) size 7x18
    57           RenderText {#text} at (38,1) size 7x18
    58             text run at (38,1) width 7: "c"
    59         RenderText {#text} at (144,1) size 26x18
    60           text run at (144,1) width 26: " abc"
     57          RenderText {#text} at (138,1) size 7x18
     58            text run at (138,1) width 7: "c"
     59        RenderText {#text} at (244,1) size 26x18
     60          text run at (244,1) width 26: " abc"
    6161      RenderBlock {P} at (0,300) size 784x20
    62         RenderText {#text} at (0,1) size 33x18
    63           text run at (0,1) width 33: "abc a"
     62        RenderText {#text} at (0,1) size 133x18
     63          text run at (0,1) width 133: "abc a"
    6464        RenderInline {SPAN} at (0,0) size 7x18
    65           RenderText {#text} at (32,1) size 7x18
    66             text run at (32,1) width 7: "b"
    67         RenderText {#text} at (38,1) size 32x18
    68           text run at (38,1) width 32: "c abc"
     65          RenderText {#text} at (132,1) size 7x18
     66            text run at (132,1) width 7: "b"
     67        RenderText {#text} at (138,1) size 132x18
     68          text run at (138,1) width 132: "c abc"
    6969      RenderBlock {P} at (0,338) size 784x20
    7070        RenderText {#text} at (0,1) size 126x18
  • trunk/Source/WebCore/ChangeLog

    r209907 r209910  
     12016-12-15  Zalan Bujtas  <zalan@apple.com>
     2
     3        text-align: justify and word-spacing combine to overflow column
     4        https://bugs.webkit.org/show_bug.cgi?id=165796
     5        rdar://problem/29672168
     6
     7        Reviewed by Myles C. Maxfield.
     8
     9        The value of the word-spacing property is not applied on the inline-tree boxes (normal line layout)
     10        with kerning enabled. It causes hittest failures and selection/rendering glitches.
     11        We normally use the pre-computed 'WordMeasurements' values to figure out the run widths. However
     12        with kerning on, in some cases we need to re-measure a certain part of the text by calling RenderText::width().
     13        This function omits the word-spacing value for leading whitespace, so when this text fragment starts with a whitespace,
     14        (while it's not at the beginning of the run) we have to manually add the word-spacing value back.
     15        r146087 added this logic with the restriction of applying it only to whitespace-only runs.
     16
     17        Test: fast/css/word-spacing-with-normal-layout.html
     18
     19        * rendering/RenderBlockLineLayout.cpp:
     20        (WebCore::setLogicalWidthForTextRun):
     21
    1222016-12-15  Myles C. Maxfield  <mmaxfield@apple.com>
    223
  • trunk/Source/WebCore/rendering/RenderBlockLineLayout.cpp

    r207275 r209910  
    487487    // Since we don't cache glyph overflows, we need to re-measure the run if
    488488    // the style is linebox-contain: glyph.
    489    
    490489    if (!lineBox->fitsToGlyphs() && canUseSimpleFontCodePath) {
    491490        unsigned lastEndOffset = run->m_start;
     491        bool atFirstWordMeasurement = true;
    492492        for (size_t i = 0, size = wordMeasurements.size(); i < size && lastEndOffset < run->m_stop; ++i) {
    493493            WordMeasurement& wordMeasurement = wordMeasurements[i];
     
    504504                    &wordMeasurement.fallbackFonts, &overflow);
    505505                UChar c = renderer.characterAt(wordMeasurement.startOffset);
    506                 if (i > 0 && wordLength == 1 && (c == ' ' || c == '\t'))
     506                // renderer.width() omits word-spacing value for leading whitespace, so let's just add it back here.
     507                if (!atFirstWordMeasurement && (c == ' ' || c == '\t'))
    507508                    measuredWidth += renderer.style().fontCascade().wordSpacing();
    508509            } else
    509510                measuredWidth += wordMeasurement.width;
     511            atFirstWordMeasurement = false;
     512
    510513            if (!wordMeasurement.fallbackFonts.isEmpty()) {
    511514                HashSet<const Font*>::const_iterator end = wordMeasurement.fallbackFonts.end();
Note: See TracChangeset for help on using the changeset viewer.