Changeset 27680 in webkit
- Timestamp:
- Nov 10, 2007 6:12:09 PM (16 years ago)
- Location:
- trunk
- Files:
-
- 24 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r27679 r27680 1 2007-11-10 Nikolas Zimmermann <zimmermann@kde.org> 2 3 Reviewed by Eric. 4 5 Update SVG layout test results after landing the vertical text support fixes. 6 7 * platform/mac/svg/W3C-SVG-1.1/text-align-05-b-expected.checksum: 8 * platform/mac/svg/W3C-SVG-1.1/text-align-05-b-expected.png: 9 * platform/mac/svg/W3C-SVG-1.1/text-align-05-b-expected.txt: 10 * platform/mac/svg/W3C-SVG-1.1/text-align-06-b-expected.checksum: 11 * platform/mac/svg/W3C-SVG-1.1/text-align-06-b-expected.png: 12 * platform/mac/svg/W3C-SVG-1.1/text-align-06-b-expected.txt: 13 * svg/batik/text/textGlyphOrientationHorizontal-expected.txt: 14 * svg/batik/text/verticalText-expected.checksum: 15 * svg/batik/text/verticalText-expected.png: 16 * svg/batik/text/verticalText-expected.txt: 17 * svg/batik/text/verticalTextOnPath-expected.checksum: 18 * svg/batik/text/verticalTextOnPath-expected.png: 19 * svg/batik/text/verticalTextOnPath-expected.txt: 20 * svg/text/text-align-05-b-expected.txt: 21 * svg/text/text-align-06-b-expected.txt: 22 * svg/text/text-path-01-b-expected.checksum: 23 * svg/text/text-path-01-b-expected.png: 24 1 25 2007-11-10 Nikolas Zimmermann <zimmermann@kde.org> 2 26 -
trunk/LayoutTests/platform/mac/svg/W3C-SVG-1.1/text-align-05-b-expected.checksum
r26781 r27680 1 791e50419ca3392f5988e93347de08e4 1 43bcac92c80d7b9853e87672ef21933b -
trunk/LayoutTests/platform/mac/svg/W3C-SVG-1.1/text-align-05-b-expected.txt
r26599 r27680 3 3 layer at (0,0) size 480x360 4 4 RenderSVGRoot {svg} at (0.50,0.50) size 479x359 5 RenderSVGContainer {g} at (5,4) size 465x31 75 RenderSVGContainer {g} at (5,4) size 465x311 6 6 RenderSVGText {text} at (5,40) size 465x44 contains 1 chunk(s) 7 7 RenderSVGInlineText {#text} at (0,-36) size 465x44 8 8 chunk 1 text run 1 at (5.00,40.00) startOffset 0 endOffset 29 width 465.00: "Test 'text-anchor' (vertical)" 9 RenderSVGContainer {g} at (152,5 7) size 117x26410 RenderSVGContainer {g} at (152,5 7) size 117x264 [transform={m=((1.00,0.00)(0.00,1.00)) t=(160.00,150.00)}]11 RenderSVGContainer {g} at (152,147) size 17x1 749 RenderSVGContainer {g} at (152,51) size 117x264 10 RenderSVGContainer {g} at (152,51) size 117x264 [transform={m=((1.00,0.00)(0.00,1.00)) t=(160.00,150.00)}] 11 RenderSVGContainer {g} at (152,147) size 17x168 12 12 RenderPath {circle} at (157,147) size 6x6 [fill={[type=SOLID] [color=#000000]}] [data="M3.00,0.00L2.99,0.19L2.98,0.38L2.95,0.56L2.91,0.75L2.85,0.93L2.79,1.10L2.71,1.28L2.63,1.45L2.53,1.61L2.43,1.76L2.31,1.91L2.19,2.05L2.05,2.19L1.91,2.31L1.76,2.43L1.61,2.53L1.45,2.63L1.28,2.71L1.10,2.79L0.93,2.85L0.75,2.91L0.56,2.95L0.38,2.98L0.19,2.99L-0.00,3.00L-0.19,2.99L-0.38,2.98L-0.56,2.95L-0.75,2.91L-0.93,2.85L-1.10,2.79L-1.28,2.71L-1.45,2.63L-1.61,2.53L-1.76,2.43L-1.91,2.31L-2.05,2.19L-2.19,2.05L-2.31,1.91L-2.43,1.76L-2.53,1.61L-2.63,1.45L-2.71,1.28L-2.79,1.10L-2.85,0.93L-2.91,0.75L-2.95,0.56L-2.98,0.38L-2.99,0.19L-3.00,-0.00L-2.99,-0.19L-2.98,-0.38L-2.95,-0.56L-2.91,-0.75L-2.85,-0.93L-2.79,-1.10L-2.71,-1.28L-2.63,-1.45L-2.53,-1.61L-2.43,-1.76L-2.31,-1.91L-2.19,-2.05L-2.05,-2.19L-1.91,-2.31L-1.76,-2.43L-1.61,-2.53L-1.45,-2.63L-1.28,-2.71L-1.10,-2.79L-0.93,-2.85L-0.75,-2.91L-0.56,-2.95L-0.38,-2.98L-0.19,-2.99L0.00,-3.00L0.19,-2.99L0.38,-2.98L0.56,-2.95L0.75,-2.91L0.93,-2.85L1.10,-2.79L1.28,-2.71L1.45,-2.63L1.61,-2.53L1.76,-2.43L1.91,-2.31L2.05,-2.19L2.19,-2.05L2.31,-1.91L2.43,-1.76L2.53,-1.61L2.63,-1.45L2.71,-1.28L2.79,-1.10L2.85,-0.93L2.91,-0.75L2.95,-0.56L2.98,-0.38L2.99,-0.19"] 13 RenderSVGText {text} at (-9, 33) size 17x165 contains 1 chunk(s)13 RenderSVGText {text} at (-9,27) size 17x165 contains 1 chunk(s) 14 14 RenderSVGInlineText {#text} at (1,-27) size 17x165 15 chunk 1 (vertical) text run 1 at (-8.50, 33.00) startOffset 0 endOffset 5 height 165.00: "start"16 RenderSVGContainer {g} at (198,5 7) size 25x198 [transform={m=((1.00,0.00)(0.00,1.00)) t=(50.00,0.00)}]15 chunk 1 (vertical) text run 1 at (-8.50,27.00) startOffset 0 endOffset 5 height 165.00: "start" 16 RenderSVGContainer {g} at (198,51) size 25x198 [transform={m=((1.00,0.00)(0.00,1.00)) t=(50.00,0.00)}] 17 17 RenderPath {circle} at (207,147) size 6x6 [fill={[type=SOLID] [color=#000000]}] [data="M3.00,0.00L2.99,0.19L2.98,0.38L2.95,0.56L2.91,0.75L2.85,0.93L2.79,1.10L2.71,1.28L2.63,1.45L2.53,1.61L2.43,1.76L2.31,1.91L2.19,2.05L2.05,2.19L1.91,2.31L1.76,2.43L1.61,2.53L1.45,2.63L1.28,2.71L1.10,2.79L0.93,2.85L0.75,2.91L0.56,2.95L0.38,2.98L0.19,2.99L-0.00,3.00L-0.19,2.99L-0.38,2.98L-0.56,2.95L-0.75,2.91L-0.93,2.85L-1.10,2.79L-1.28,2.71L-1.45,2.63L-1.61,2.53L-1.76,2.43L-1.91,2.31L-2.05,2.19L-2.19,2.05L-2.31,1.91L-2.43,1.76L-2.53,1.61L-2.63,1.45L-2.71,1.28L-2.79,1.10L-2.85,0.93L-2.91,0.75L-2.95,0.56L-2.98,0.38L-2.99,0.19L-3.00,-0.00L-2.99,-0.19L-2.98,-0.38L-2.95,-0.56L-2.91,-0.75L-2.85,-0.93L-2.79,-1.10L-2.71,-1.28L-2.63,-1.45L-2.53,-1.61L-2.43,-1.76L-2.31,-1.91L-2.19,-2.05L-2.05,-2.19L-1.91,-2.31L-1.76,-2.43L-1.61,-2.53L-1.45,-2.63L-1.28,-2.71L-1.10,-2.79L-0.93,-2.85L-0.75,-2.91L-0.56,-2.95L-0.38,-2.98L-0.19,-2.99L0.00,-3.00L0.19,-2.99L0.38,-2.98L0.56,-2.95L0.75,-2.91L0.93,-2.85L1.10,-2.79L1.28,-2.71L1.45,-2.63L1.61,-2.53L1.76,-2.43L1.91,-2.31L2.05,-2.19L2.19,-2.05L2.31,-1.91L2.43,-1.76L2.53,-1.61L2.63,-1.45L2.71,-1.28L2.79,-1.10L2.85,-0.93L2.91,-0.75L2.95,-0.56L2.98,-0.38L2.99,-0.19"] 18 RenderSVGText {text} at (-13,- 66) size 25x198 contains 1 chunk(s)18 RenderSVGText {text} at (-13,-72) size 25x198 contains 1 chunk(s) 19 19 RenderSVGInlineText {#text} at (1,-27) size 25x198 20 chunk 1 (middle anchor, vertical) text run 1 at (-12.50,- 66.00) startOffset 0 endOffset 6 height 198.00: "middle"21 RenderSVGContainer {g} at (252,5 7) size 17x99[transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,0.00)}]20 chunk 1 (middle anchor, vertical) text run 1 at (-12.50,-72.00) startOffset 0 endOffset 6 height 198.00: "middle" 21 RenderSVGContainer {g} at (252,51) size 17x102 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,0.00)}] 22 22 RenderPath {circle} at (257,147) size 6x6 [fill={[type=SOLID] [color=#000000]}] [data="M3.00,0.00L2.99,0.19L2.98,0.38L2.95,0.56L2.91,0.75L2.85,0.93L2.79,1.10L2.71,1.28L2.63,1.45L2.53,1.61L2.43,1.76L2.31,1.91L2.19,2.05L2.05,2.19L1.91,2.31L1.76,2.43L1.61,2.53L1.45,2.63L1.28,2.71L1.10,2.79L0.93,2.85L0.75,2.91L0.56,2.95L0.38,2.98L0.19,2.99L-0.00,3.00L-0.19,2.99L-0.38,2.98L-0.56,2.95L-0.75,2.91L-0.93,2.85L-1.10,2.79L-1.28,2.71L-1.45,2.63L-1.61,2.53L-1.76,2.43L-1.91,2.31L-2.05,2.19L-2.19,2.05L-2.31,1.91L-2.43,1.76L-2.53,1.61L-2.63,1.45L-2.71,1.28L-2.79,1.10L-2.85,0.93L-2.91,0.75L-2.95,0.56L-2.98,0.38L-2.99,0.19L-3.00,-0.00L-2.99,-0.19L-2.98,-0.38L-2.95,-0.56L-2.91,-0.75L-2.85,-0.93L-2.79,-1.10L-2.71,-1.28L-2.63,-1.45L-2.53,-1.61L-2.43,-1.76L-2.31,-1.91L-2.19,-2.05L-2.05,-2.19L-1.91,-2.31L-1.76,-2.43L-1.61,-2.53L-1.45,-2.63L-1.28,-2.71L-1.10,-2.79L-0.93,-2.85L-0.75,-2.91L-0.56,-2.95L-0.38,-2.98L-0.19,-2.99L0.00,-3.00L0.19,-2.99L0.38,-2.98L0.56,-2.95L0.75,-2.91L0.93,-2.85L1.10,-2.79L1.28,-2.71L1.45,-2.63L1.61,-2.53L1.76,-2.43L1.91,-2.31L2.05,-2.19L2.19,-2.05L2.31,-1.91L2.43,-1.76L2.53,-1.61L2.63,-1.45L2.71,-1.28L2.79,-1.10L2.85,-0.93L2.91,-0.75L2.95,-0.56L2.98,-0.38L2.99,-0.19"] 23 RenderSVGText {text} at (-9,- 66) size 17x99 contains 1 chunk(s)23 RenderSVGText {text} at (-9,-72) size 17x99 contains 1 chunk(s) 24 24 RenderSVGInlineText {#text} at (1,-27) size 17x99 25 chunk 1 (end anchor, vertical) text run 1 at (-8.50,- 66.00) startOffset 0 endOffset 3 height 99.00: "end"25 chunk 1 (end anchor, vertical) text run 1 at (-8.50,-72.00) startOffset 0 endOffset 3 height 99.00: "end" 26 26 RenderSVGText {text} at (10,340) size 264x46 contains 1 chunk(s) 27 27 RenderSVGInlineText {#text} at (0,-36) size 264x46 -
trunk/LayoutTests/platform/mac/svg/W3C-SVG-1.1/text-align-06-b-expected.checksum
r26781 r27680 1 88d2fbdabf0d8ca62a5db1922ffec361 1 d4f1c338871e272f77efb2c7fb44d905 -
trunk/LayoutTests/platform/mac/svg/W3C-SVG-1.1/text-align-06-b-expected.txt
r26599 r27680 2 2 RenderView at (0,0) size 480x360 3 3 layer at (0,0) size 480x360 4 RenderSVGRoot {svg} at (0,0.50) size 481x3 62.505 RenderSVGContainer {g} at (0,4) size 481x35 94 RenderSVGRoot {svg} at (0,0.50) size 481x359 5 RenderSVGContainer {g} at (0,4) size 481x353 6 6 RenderSVGText {text} at (0,40) size 481x44 contains 1 chunk(s) 7 7 RenderSVGInlineText {#text} at (0,-36) size 481x44 8 8 chunk 1 text run 1 at (0.00,40.00) startOffset 0 endOffset 31 width 481.00: "Test 'baseline-shift' (vertic.)" 9 RenderSVGContainer {g} at (82,6 6) size 293x29710 RenderSVGContainer {g} at (82,6 6) size 293x297 [transform={m=((1.00,0.00)(0.00,1.00)) t=(90.00,60.00)}]11 RenderSVGText {text} at (-9, 33) size 24x165 contains 1 chunk(s)9 RenderSVGContainer {g} at (82,60) size 293x297 10 RenderSVGContainer {g} at (82,60) size 293x297 [transform={m=((1.00,0.00)(0.00,1.00)) t=(90.00,60.00)}] 11 RenderSVGText {text} at (-9,27) size 24x165 contains 1 chunk(s) 12 12 RenderSVGInlineText {#text} at (1,-27) size 17x66 13 chunk 1 (vertical) text run 1 at (-8.50, 33.00) startOffset 0 endOffset 2 height 66.00: "te"13 chunk 1 (vertical) text run 1 at (-8.50,27.00) startOffset 0 endOffset 2 height 66.00: "te" 14 14 RenderSVGTSpan {tspan} at (0,0) size 17x33 15 15 RenderSVGInlineText {#text} at (8,39) size 17x33 16 chunk 1 (vertical) text run 2 at (-1.50,9 9.00) startOffset 0 endOffset 1 height 33.00: "7"16 chunk 1 (vertical) text run 2 at (-1.50,93.00) startOffset 0 endOffset 1 height 33.00: "7" 17 17 RenderSVGInlineText {#text} at (2,72) size 15x66 18 chunk 1 (vertical) text run 3 at (-7.50,1 32.00) startOffset 0 endOffset 2 height 66.00: "xt"19 RenderSVGText {text} at (45, 33) size 44x264 contains 1 chunk(s)18 chunk 1 (vertical) text run 3 at (-7.50,126.00) startOffset 0 endOffset 2 height 66.00: "xt" 19 RenderSVGText {text} at (45,27) size 44x264 contains 1 chunk(s) 20 20 RenderSVGInlineText {#text} at (26,-27) size 18x66 21 chunk 1 (vertical) text run 1 at (71.50, 33.00) startOffset 0 endOffset 2 height 66.00: "te"21 chunk 1 (vertical) text run 1 at (71.50,27.00) startOffset 0 endOffset 2 height 66.00: "te" 22 22 RenderSVGTSpan {tspan} at (0,0) size 28x132 23 23 RenderSVGInlineText {#text} at (0,39) size 28x132 24 chunk 1 (vertical) text run 2 at (45.50,9 9.00) startOffset 0 endOffset 4 height 132.00: "-70%"24 chunk 1 (vertical) text run 2 at (45.50,93.00) startOffset 0 endOffset 4 height 132.00: "-70%" 25 25 RenderSVGInlineText {#text} at (27,171) size 16x66 26 chunk 1 (vertical) text run 3 at (72.50,2 31.00) startOffset 0 endOffset 2 height 66.00: "xt"27 RenderSVGText {text} at (155, 33) size 34x231 contains 1 chunk(s)26 chunk 1 (vertical) text run 3 at (72.50,225.00) startOffset 0 endOffset 2 height 66.00: "xt" 27 RenderSVGText {text} at (155,27) size 34x231 contains 1 chunk(s) 28 28 RenderSVGInlineText {#text} at (16,-27) size 18x66 29 chunk 1 (vertical) text run 1 at (171.50, 33.00) startOffset 0 endOffset 2 height 66.00: "te"29 chunk 1 (vertical) text run 1 at (171.50,27.00) startOffset 0 endOffset 2 height 66.00: "te" 30 30 RenderSVGTSpan {tspan} at (0,0) size 17x99 31 31 RenderSVGInlineText {#text} at (0,39) size 17x99 32 chunk 1 (vertical) text run 2 at (155.00,9 9.00) startOffset 0 endOffset 3 height 99.00: "sub"32 chunk 1 (vertical) text run 2 at (155.00,93.00) startOffset 0 endOffset 3 height 99.00: "sub" 33 33 RenderSVGTSpan {tspan} at (0,0) size 16x33 34 34 RenderSVGInlineText {#text} at (17,138) size 16x33 35 chunk 1 (vertical) text run 3 at (172.50,19 8.00) startOffset 0 endOffset 1 height 33.00: "x"35 chunk 1 (vertical) text run 3 at (172.50,192.00) startOffset 0 endOffset 1 height 33.00: "x" 36 36 RenderSVGInlineText {#text} at (21,171) size 8x33 37 chunk 1 (vertical) text run 4 at (176.00,2 31.00) startOffset 0 endOffset 1 height 33.00: "t"38 RenderSVGText {text} at (251, 33) size 34x297 contains 1 chunk(s)37 chunk 1 (vertical) text run 4 at (176.00,225.00) startOffset 0 endOffset 1 height 33.00: "t" 38 RenderSVGText {text} at (251,27) size 34x297 contains 1 chunk(s) 39 39 RenderSVGInlineText {#text} at (0,-27) size 18x66 40 chunk 1 (vertical) text run 1 at (251.50, 33.00) startOffset 0 endOffset 2 height 66.00: "te"40 chunk 1 (vertical) text run 1 at (251.50,27.00) startOffset 0 endOffset 2 height 66.00: "te" 41 41 RenderSVGTSpan {tspan} at (0,0) size 17x165 42 42 RenderSVGInlineText {#text} at (17,39) size 17x165 43 chunk 1 (vertical) text run 2 at (268.00,9 9.00) startOffset 0 endOffset 5 height 165.00: "super"43 chunk 1 (vertical) text run 2 at (268.00,93.00) startOffset 0 endOffset 5 height 165.00: "super" 44 44 RenderSVGTSpan {tspan} at (0,0) size 16x33 45 45 RenderSVGInlineText {#text} at (1,204) size 16x33 46 chunk 1 (vertical) text run 3 at (252.50,2 64.00) startOffset 0 endOffset 1 height 33.00: "x"46 chunk 1 (vertical) text run 3 at (252.50,258.00) startOffset 0 endOffset 1 height 33.00: "x" 47 47 RenderSVGInlineText {#text} at (5,237) size 8x33 48 chunk 1 (vertical) text run 4 at (256.00,29 7.00) startOffset 0 endOffset 1 height 33.00: "t"48 chunk 1 (vertical) text run 4 at (256.00,291.00) startOffset 0 endOffset 1 height 33.00: "t" 49 49 RenderSVGText {text} at (10,340) size 264x46 contains 1 chunk(s) 50 50 RenderSVGInlineText {#text} at (0,-36) size 264x46 -
trunk/LayoutTests/svg/batik/text/textGlyphOrientationHorizontal-expected.txt
r26516 r27680 2 2 RenderView at (0,0) size 800x600 3 3 layer at (0,0) size 450x500 4 RenderSVGRoot {svg} at ( 40,16) size 360x375.524 RenderSVGRoot {svg} at (39,16) size 361x375.52 5 5 RenderSVGHiddenContainer {defs} at (0,0) size 0x0 6 6 RenderPath {path} at (19.65,8.96) size 160.35x42.08 [stroke={[type=SOLID] [color=#0000FF]}] [data="M20.00,40.00C40.00,20.00,60.00,0.00,80.00,20.00C100.00,40.00,120.00,60.00,140.00,40.00C160.00,20.00,180.00,20.00,180.00,20.00"] … … 9 9 RenderSVGInlineText {#text} at (0,-14) size 190x17 10 10 chunk 1 (middle anchor) text run 1 at (130.00,30.00) startOffset 0 endOffset 27 width 190.00: "Text Orientation Horizontal" 11 RenderSVGContainer {g} at ( 40,45) size 360x346.5211 RenderSVGContainer {g} at (39,45) size 361x346.52 12 12 RenderPath {line} at (50,79) size 150x2 [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M50.00,80.00L200.00,80.00"] 13 13 RenderSVGText {text} at (50,80) size 142x27 contains 1 chunk(s) … … 30 30 RenderSVGInlineText {#text} at (0,0) size 0x0 31 31 RenderPath {line} at (50,129) size 350x2 [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M50.00,130.00L400.00,130.00"] 32 RenderSVGText {text} at (5 0,130) size 142x27contains 1 chunk(s)33 RenderSVGInlineText {#text} at ( 0,-22) size 142x2734 chunk 1 text run 1 at (5 0.00,130.00) startOffset 0 endOffset 13 width 142.00: "Batik is Good"35 RenderSVGContainer {g} at (40,1 32) size 330x69.52 [transform={m=((1.00,0.00)(0.00,1.00)) t=(30.00,150.00)}]32 RenderSVGText {text} at (58,125) size 351x20 contains 1 chunk(s) 33 RenderSVGInlineText {#text} at (-11,-15) size 351x20 34 chunk 1 text run 1 at (58.00,125.00) startOffset 0 endOffset 13 width 142.00: "Batik is Good" 35 RenderSVGContainer {g} at (40,147) size 340x54.52 [transform={m=((1.00,0.00)(0.00,1.00)) t=(30.00,150.00)}] 36 36 RenderSVGContainer {use} at (49.55,158.48) size 320.45x43.05 37 37 RenderSVGContainer {g} at (49.55,158.48) size 320.45x43.05 38 38 RenderPath {path} at (49.55,158.48) size 320.45x43.05 [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M20.00,40.00C60.00,20.00,100.00,0.00,140.00,20.00C180.00,40.00,220.00,60.00,260.00,40.00C300.00,20.00,340.00,20.00,340.00,20.00"] 39 RenderSVGText {text} at ( 27,11) size 153x62contains 1 chunk(s)40 RenderSVGTextPath {textPath} at (0,0) size 153x6241 RenderSVGInlineText {#text} at (- 17,-15) size 67x4842 chunk 1 text run 1 at ( 27.16,17.35) startOffset 0 endOffset 6 width 60.00: "Batik "43 RenderSVGTSpan {tspan} at (0,0) size 25x2944 RenderSVGInlineText {#text} at ( 39,-29) size 25x2945 chunk 1 text run 2 at ( 77.45,13.71) startOffset 0 endOffset 2 width 17.00: "is"46 RenderSVGTSpan {tspan} at (0,0) size 74x4147 RenderSVGInlineText {#text} at ( 62,-21) size 74x4148 chunk 1 text run 3 at ( 95.11,11.78) startOffset 0 endOffset 5 width 65.00: " Good"39 RenderSVGText {text} at (32,11) size 340x47 contains 1 chunk(s) 40 RenderSVGTextPath {textPath} at (0,0) size 340x47 41 RenderSVGInlineText {#text} at (-22,-14) size 162x42 42 chunk 1 text run 1 at (32.09,11.82) startOffset 0 endOffset 6 width 60.00: "Batik " 43 RenderSVGTSpan {tspan} at (0,0) size 54x24 44 RenderSVGInlineText {#text} at (138,0) size 54x24 45 chunk 1 text run 2 at (184.39,40.17) startOffset 0 endOffset 2 width 17.00: "is" 46 RenderSVGTSpan {tspan} at (0,0) size 135x40 47 RenderSVGInlineText {#text} at (183,-7) size 135x40 48 chunk 1 text run 3 at (237.33,22.64) startOffset 0 endOffset 5 width 65.00: " Good" 49 49 RenderSVGInlineText {#text} at (0,0) size 0x0 50 50 RenderPath {line} at (50,239) size 150x2 [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M50.00,240.00L200.00,240.00"] 51 RenderSVGText {text} at (5 0,240) size 142x27contains 1 chunk(s)52 RenderSVGInlineText {#text} at ( 0,-22) size 142x2753 chunk 1 text run 1 at (5 0.00,240.00) startOffset 0 endOffset 13 width 142.00: "Batik is Good"51 RenderSVGText {text} at (58,240) size 143x28 contains 1 chunk(s) 52 RenderSVGInlineText {#text} at (-9,-23) size 143x28 53 chunk 1 text run 1 at (58.00,240.00) startOffset 0 endOffset 13 width 142.00: "Batik is Good" 54 54 RenderSVGContainer {g} at (224,205) size 176x69 [transform={m=((1.00,0.00)(0.00,1.00)) t=(220.00,220.00)}] 55 55 RenderSVGContainer {use} at (239.29,228.42) size 160.71x43.16 … … 68 68 RenderSVGInlineText {#text} at (0,0) size 0x0 69 69 RenderPath {line} at (50,319) size 350x2 [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M50.00,320.00L400.00,320.00"] 70 RenderSVGText {text} at ( 50,320) size 142x27contains 1 chunk(s)71 RenderSVGInlineText {#text} at ( 0,-22) size 142x2772 chunk 1 text run 1 at ( 50.00,320.00) startOffset 0 endOffset 13 width 142.00: "Batik is Good"73 RenderSVGContainer {g} at ( 40,322) size 330x69.52 [transform={m=((1.00,0.00)(0.00,1.00)) t=(30.00,340.00)}]70 RenderSVGText {text} at (42,315) size 353x20 contains 1 chunk(s) 71 RenderSVGInlineText {#text} at (5,-15) size 353x20 72 chunk 1 text run 1 at (42.00,315.00) startOffset 0 endOffset 13 width 142.00: "Batik is Good" 73 RenderSVGContainer {g} at (39,338) size 343x53.52 [transform={m=((1.00,0.00)(0.00,1.00)) t=(30.00,340.00)}] 74 74 RenderSVGContainer {use} at (49.55,348.48) size 320.45x43.05 75 75 RenderSVGContainer {g} at (49.55,348.48) size 320.45x43.05 76 76 RenderPath {path} at (49.55,348.48) size 320.45x43.05 [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M20.00,40.00C60.00,20.00,100.00,0.00,140.00,20.00C180.00,40.00,220.00,60.00,260.00,40.00C300.00,20.00,340.00,20.00,340.00,20.00"] 77 RenderSVGText {text} at ( 27,11) size 153x62contains 1 chunk(s)78 RenderSVGTextPath {textPath} at (0,0) size 153x6279 RenderSVGInlineText {#text} at (- 17,-15) size 67x4880 chunk 1 text run 1 at ( 27.16,17.35) startOffset 0 endOffset 6 width 60.00: "Batik "81 RenderSVGTSpan {tspan} at (0,0) size 25x2982 RenderSVGInlineText {#text} at ( 39,-29) size 25x2983 chunk 1 text run 2 at ( 77.45,13.71) startOffset 0 endOffset 2 width 17.00: "is"84 RenderSVGTSpan {tspan} at (0,0) size 74x4185 RenderSVGInlineText {#text} at ( 62,-21) size 74x4186 chunk 1 text run 3 at ( 95.11,11.78) startOffset 0 endOffset 5 width 65.00: " Good"77 RenderSVGText {text} at (32,11) size 343x48 contains 1 chunk(s) 78 RenderSVGTextPath {textPath} at (0,0) size 343x48 79 RenderSVGInlineText {#text} at (-23,-13) size 170x41 80 chunk 1 text run 1 at (32.09,11.82) startOffset 0 endOffset 6 width 60.00: "Batik " 81 RenderSVGTSpan {tspan} at (0,0) size 47x20 82 RenderSVGInlineText {#text} at (148,4) size 47x20 83 chunk 1 text run 2 at (184.39,40.17) startOffset 0 endOffset 2 width 17.00: "is" 84 RenderSVGTSpan {tspan} at (0,0) size 129x42 85 RenderSVGInlineText {#text} at (191,-7) size 129x42 86 chunk 1 text run 3 at (237.33,22.64) startOffset 0 endOffset 5 width 65.00: " Good" 87 87 RenderSVGInlineText {#text} at (0,0) size 0x0 -
trunk/LayoutTests/svg/batik/text/verticalText-expected.checksum
r26384 r27680 1 fcca0c5164888e7b672cc77247cb66cb 1 98c55d902080122e04522de09b80a30a -
trunk/LayoutTests/svg/batik/text/verticalText-expected.txt
r26516 r27680 2 2 RenderView at (0,0) size 800x600 3 3 layer at (0,0) size 450x500 4 RenderSVGRoot {svg} at (20,26) size 410x 5124 RenderSVGRoot {svg} at (20,26) size 410x464 5 5 RenderSVGHiddenContainer {defs} at (0,0) size 0x0 6 6 RenderPath {path} at (14.95,7.04) size 315.11x30.91 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF]}] [data="M100.00,200.00C200.00,100.00,300.00,0.00,400.00,100.00C500.00,200.00,600.00,300.00,700.00,200.00C800.00,100.00,900.00,0.00,1000.00,100.00C1100.00,200.00,1200.00,300.00,1300.00,200.00C1400.00,100.00,1500.00,0.00,1600.00,100.00C1700.00,200.00,1800.00,300.00,1900.00,200.00C2000.00,100.00,2100.00,0.00,2200.00,100.00"] 7 RenderSVGContainer {g} at (20,26) size 410x 5127 RenderSVGContainer {g} at (20,26) size 410x464 8 8 RenderSVGText {text} at (163,40) size 124x17 contains 1 chunk(s) 9 9 RenderSVGInlineText {#text} at (0,-14) size 124x17 … … 27 27 RenderPath {line} at (349.50,75) size 1x375 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#000000]}] [data="M350.00,75.00L350.00,450.00"] 28 28 RenderPath {line} at (399.50,75) size 1x375 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#000000]}] [data="M400.00,75.00L400.00,450.00"] 29 RenderSVGText {text} at ( 42,92) size 16x391contains 1 chunk(s)30 RenderSVGInlineText {#text} at ( 0,-13) size 16x39131 chunk 1 (vertical) text run 1 at ( 42.50,92.00) startOffset 0 endOffset 23 height 391.00: "Writing top to bottom\x{753B}\x{50CF}"32 RenderSVGText {text} at ( 92,92) size 16x408contains 1 chunk(s)33 RenderSVGInlineText {#text} at ( 0,-13) size 16x40834 chunk 1 (vertical) text run 1 at ( 92.50,92.00) startOffset 0 endOffset 24 height 408.00: "Glyph Orientation:auto\x{753B}\x{50CF}"35 RenderSVGText {text} at (142, 92) size 16x357 contains 1 chunk(s)29 RenderSVGText {text} at (33,79) size 18x165 contains 1 chunk(s) 30 RenderSVGInlineText {#text} at (8,0) size 18x165 31 chunk 1 (vertical) text run 1 at (33.00,79.00) startOffset 0 endOffset 23 height 391.00: "Writing top to bottom\x{753B}\x{50CF}" 32 RenderSVGText {text} at (83,79) size 18x174 contains 1 chunk(s) 33 RenderSVGInlineText {#text} at (8,0) size 18x174 34 chunk 1 (vertical) text run 1 at (83.00,79.00) startOffset 0 endOffset 24 height 408.00: "Glyph Orientation:auto\x{753B}\x{50CF}" 35 RenderSVGText {text} at (142,88) size 16x357 contains 1 chunk(s) 36 36 RenderSVGInlineText {#text} at (0,-13) size 16x357 37 chunk 1 (vertical) text run 1 at (142.50, 92.00) startOffset 0 endOffset 21 height 357.00: "Glyph Orientation:0\x{753B}\x{50CF}"38 RenderSVGText {text} at (1 92,92) size 16x374contains 1 chunk(s)39 RenderSVGInlineText {#text} at ( 0,-13) size 16x37440 chunk 1 (vertical) text run 1 at (1 92.50,92.00) startOffset 0 endOffset 22 height 374.00: "Glyph Orientation:90\x{753B}\x{50CF}"41 RenderSVGText {text} at (2 42,92) size 16x391contains 1 chunk(s)42 RenderSVGInlineText {#text} at ( 0,-13) size 16x39143 chunk 1 (vertical) text run 1 at (2 42.50,92.00) startOffset 0 endOffset 23 height 391.00: "Glyph Orientation:180\x{753B}\x{50CF}"44 RenderSVGText {text} at ( 292,92) size 16x391 contains 1 chunk(s)45 RenderSVGInlineText {#text} at ( 0,-13) size 16x39146 chunk 1 (vertical) text run 1 at ( 292.50,92.00) startOffset 0 endOffset 23 height 391.00: "Glyph Orientation:270\x{753B}\x{50CF}"47 RenderSVGText {text} at (3 44,92) size 12x408contains 1 chunk(s)48 RenderSVGInlineText {#text} at ( 0,-13) size 12x15349 chunk 1 (vertical) text run 1 at (3 44.00,92.00) startOffset 0 endOffset 9 height 153.00: "Embedded "50 RenderSVGTSpan {tspan} at (0,0) size 8x11951 RenderSVGInlineText {#text} at ( 2,140) size 8x11952 chunk 1 (vertical) text run 2 at (3 46.00,245.00) startOffset 0 endOffset 7 height 119.00: "<tspan>"53 RenderSVGInlineText {#text} at ( 0,259) size 12x13654 chunk 1 (vertical) text run 3 at (3 44.00,364.00) startOffset 0 endOffset 8 height 136.00: " element"55 RenderSVGText {text} at (3 94,92) size 12x459contains 1 chunk(s)56 RenderSVGInlineText {#text} at ( 0,-13) size 12x15357 chunk 1 (vertical) text run 1 at (3 94.00,92.00) startOffset 0 endOffset 9 height 153.00: "Embedded "37 chunk 1 (vertical) text run 1 at (142.50,88.00) startOffset 0 endOffset 21 height 357.00: "Glyph Orientation:0\x{753B}\x{50CF}" 38 RenderSVGText {text} at (183,79) size 18x163 contains 1 chunk(s) 39 RenderSVGInlineText {#text} at (8,0) size 18x163 40 chunk 1 (vertical) text run 1 at (183.00,79.00) startOffset 0 endOffset 22 height 374.00: "Glyph Orientation:90\x{753B}\x{50CF}" 41 RenderSVGText {text} at (250,88) size 16x392 contains 1 chunk(s) 42 RenderSVGInlineText {#text} at (-8,-14) size 16x392 43 chunk 1 (vertical) text run 1 at (250.00,88.00) startOffset 0 endOffset 23 height 391.00: "Glyph Orientation:180\x{753B}\x{50CF}" 44 RenderSVGText {text} at (317,79) size 17x171 contains 1 chunk(s) 45 RenderSVGInlineText {#text} at (-26,0) size 26x171 46 chunk 1 (vertical) text run 1 at (317.00,79.00) startOffset 0 endOffset 23 height 391.00: "Glyph Orientation:270\x{753B}\x{50CF}" 47 RenderSVGText {text} at (333,79) size 17x173 contains 1 chunk(s) 48 RenderSVGInlineText {#text} at (9,0) size 17x71 49 chunk 1 (vertical) text run 1 at (333.00,79.00) startOffset 0 endOffset 9 height 153.00: "Embedded " 50 RenderSVGTSpan {tspan} at (0,0) size 17x49 51 RenderSVGInlineText {#text} at (9,71) size 17x49 52 chunk 1 (vertical) text run 2 at (333.00,150.00) startOffset 0 endOffset 7 height 119.00: "<tspan>" 53 RenderSVGInlineText {#text} at (9,120) size 17x53 54 chunk 1 (vertical) text run 3 at (333.00,199.00) startOffset 0 endOffset 8 height 136.00: " element" 55 RenderSVGText {text} at (383,79) size 18x294 contains 1 chunk(s) 56 RenderSVGInlineText {#text} at (8,0) size 18x71 57 chunk 1 (vertical) text run 1 at (383.00,79.00) startOffset 0 endOffset 9 height 153.00: "Embedded " 58 58 RenderSVGTSpan {tspan} at (0,0) size 8x170 59 RenderSVGInlineText {#text} at ( 2,140) size 8x17060 chunk 1 (vertical) text run 2 at (396.00, 245.00) startOffset 0 endOffset 10 height 170.00: "orientated"61 RenderSVGInlineText {#text} at ( 0,310) size 12x13662 chunk 1 (vertical) text run 3 at (3 94.00,415.00) startOffset 0 endOffset 8 height 136.00: " element"63 RenderSVGContainer {g} at ( 42,454) size 328.11x43[transform={m=((1.00,0.00)(0.00,1.00)) t=(40.00,450.00)}]59 RenderSVGInlineText {#text} at (13,67) size 8x170 60 chunk 1 (vertical) text run 2 at (396.00,159.00) startOffset 0 endOffset 10 height 170.00: "orientated" 61 RenderSVGInlineText {#text} at (8,241) size 18x53 62 chunk 1 (vertical) text run 3 at (383.00,320.00) startOffset 0 endOffset 8 height 136.00: " element" 63 RenderSVGContainer {g} at (51,455) size 319.11x35 [transform={m=((1.00,0.00)(0.00,1.00)) t=(40.00,450.00)}] 64 64 RenderSVGContainer {use} at (54.89,457.29) size 315.21x30.43 65 65 RenderSVGContainer {g} at (54.89,457.29) size 315.21x30.43 66 66 RenderPath {path} at (54.89,457.29) size 315.21x30.43 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M100.00,200.00C200.00,100.00,300.00,0.00,400.00,100.00C500.00,200.00,600.00,300.00,700.00,200.00C800.00,100.00,900.00,0.00,1000.00,100.00C1100.00,200.00,1200.00,300.00,1300.00,200.00C1400.00,100.00,1500.00,0.00,1600.00,100.00C1700.00,200.00,1800.00,300.00,1900.00,200.00C2000.00,100.00,2100.00,0.00,2200.00,100.00"] 67 RenderSVGText {text} at (1 5,22) size 297x43contains 1 chunk(s)68 RenderSVGTextPath {textPath} at (0,0) size 297x 4369 RenderSVGInlineText {#text} at (- 13,-18) size 297x4370 chunk 1 (vertical) text run 1 at (1 5.47,22.79) startOffset 0 endOffset 25 height 350.00: "Vertical text on a Path\x{753B}\x{50CF}"67 RenderSVGText {text} at (19,8) size 297x35 contains 1 chunk(s) 68 RenderSVGTextPath {textPath} at (0,0) size 297x35 69 RenderSVGInlineText {#text} at (-8,-3) size 297x35 70 chunk 1 (vertical) text run 1 at (19.97,8.79) startOffset 0 endOffset 25 height 350.00: "Vertical text on a Path\x{753B}\x{50CF}" 71 71 RenderSVGInlineText {#text} at (0,0) size 0x0 72 72 RenderSVGContainer {use} at (0,0) size 0x0 -
trunk/LayoutTests/svg/batik/text/verticalTextOnPath-expected.checksum
r26516 r27680 1 246a31a6cacaa6e149f46eb5140b9420 1 4802b5c601684a157dc9b1d00ebbdc2a -
trunk/LayoutTests/svg/batik/text/verticalTextOnPath-expected.txt
r26516 r27680 2 2 RenderView at (0,0) size 800x600 3 3 layer at (0,0) size 450x500 4 RenderSVGRoot {svg} at (1 ,26) size 446x6245 RenderSVGContainer {g} at (1 ,26) size 446x6244 RenderSVGRoot {svg} at (11,26) size 436x457 5 RenderSVGContainer {g} at (11,26) size 436x457 6 6 RenderSVGText {text} at (134,40) size 182x17 contains 1 chunk(s) 7 7 RenderSVGInlineText {#text} at (0,-14) size 182x17 … … 10 10 RenderPath {path} at (14.95,7.04) size 120.05x30.91 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF]}] [data="M100.00,200.00C200.00,100.00,300.00,0.00,400.00,100.00C500.00,200.00,600.00,300.00,700.00,200.00C800.00,100.00,900.00,100.00,900.00,100.00"] 11 11 RenderPath {path} at (29.85,12.25) size 90.30x37.75 [transform={m=((0.30,0.00)(0.00,0.50)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF]}] [data="M100.00,100.00C100.00,0.00,400.00,0.00,400.00,100.00"] 12 RenderSVGContainer {g} at (1 ,75) size 134x129[transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,70.00)}]12 RenderSVGContainer {g} at (11,59) size 124x94 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,70.00)}] 13 13 RenderSVGContainer {use} at (14.89,77.29) size 120.11x30.43 14 14 RenderSVGContainer {g} at (14.89,77.29) size 120.11x30.43 15 15 RenderPath {path} at (14.89,77.29) size 120.11x30.43 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M100.00,200.00C200.00,100.00,300.00,0.00,400.00,100.00C500.00,200.00,600.00,300.00,700.00,200.00C800.00,100.00,900.00,100.00,900.00,100.00"] 16 RenderSVGText {text} at (1 6,26) size 121x129contains 1 chunk(s)17 RenderSVGTextPath {textPath} at (0,0) size 121x12918 RenderSVGInlineText {#text} at (- 15,-21) size 89x4119 chunk 1 (vertical) text run 1 at (1 6.55,26.15) startOffset 0 endOffset 5 height 85.00: "Text "20 RenderSVGTSpan {tspan} at (0,0) size 18x3221 RenderSVGInlineText {#text} at ( 79,-9) size 18x3222 chunk 1 (vertical) text run 2 at ( 88.08,45.41) startOffset 0 endOffset 2 height 34.00: "on"23 RenderSVGTSpan {tspan} at (0,0) size 15x12024 RenderSVGInlineText {#text} at ( 91,-12) size 15x12025 chunk 1 (vertical) text run 3 at ( 116.63,35.87) startOffset 0 endOffset 7 height 119.00: " a Path"16 RenderSVGText {text} at (18,9) size 85x56 contains 1 chunk(s) 17 RenderSVGTextPath {textPath} at (0,0) size 85x56 18 RenderSVGInlineText {#text} at (-7,-9) size 36x33 19 chunk 1 (vertical) text run 1 at (18.19,10.99) startOffset 0 endOffset 5 height 85.00: "Text " 20 RenderSVGTSpan {tspan} at (0,0) size 25x21 21 RenderSVGInlineText {#text} at (22,-20) size 25x21 22 chunk 1 (vertical) text run 2 at (43.70,9.08) startOffset 0 endOffset 2 height 34.00: "on" 23 RenderSVGTSpan {tspan} at (0,0) size 43x39 24 RenderSVGInlineText {#text} at (35,-3) size 43x39 25 chunk 1 (vertical) text run 3 at (56.90,12.32) startOffset 0 endOffset 7 height 119.00: " a Path" 26 26 RenderSVGInlineText {#text} at (0,0) size 0x0 27 27 RenderSVGText {text} at (35,60) size 68x13 contains 1 chunk(s) … … 34 34 RenderSVGInlineText {#text} at (0,-10) size 100x13 35 35 chunk 1 text run 1 at (35.00,80.00) startOffset 0 endOffset 24 width 100.00: "glyph-orientation=\"auto\"" 36 RenderSVGContainer {g} at (14 6,66) size 141x119[transform={m=((1.00,0.00)(0.00,1.00)) t=(150.00,70.00)}]36 RenderSVGContainer {g} at (142,66) size 145x100 [transform={m=((1.00,0.00)(0.00,1.00)) t=(150.00,70.00)}] 37 37 RenderSVGContainer {use} at (164.89,77.29) size 120.11x30.43 38 38 RenderSVGContainer {g} at (164.89,77.29) size 120.11x30.43 39 39 RenderPath {path} at (164.89,77.29) size 120.11x30.43 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M100.00,200.00C200.00,100.00,300.00,0.00,400.00,100.00C500.00,200.00,600.00,300.00,700.00,200.00C800.00,100.00,900.00,100.00,900.00,100.00"] 40 RenderSVGText {text} at ( -5,17) size 109x119contains 1 chunk(s)41 RenderSVGTextPath {textPath} at (0,0) size 1 09x11942 RenderSVGInlineText {#text} at ( 1,-21) size 9x8543 chunk 1 (middle anchor, vertical) text run 1 at ( -4.50,17.00) startOffset 0 endOffset 5 height 85.00: "Text "44 RenderSVGTSpan {tspan} at (0,0) size 8x3545 RenderSVGInlineText {#text} at ( 11,63) size 8x3546 chunk 1 (middle anchor, vertical) text run 2 at ( -4.00,102.00) startOffset 0 endOffset 2 height 34.00: "on"47 RenderSVGTSpan {tspan} at (0,0) size 10 1x4448 RenderSVGInlineText {#text} at ( 9,-12) size 101x4449 chunk 1 (middle anchor, vertical) text run 3 at ( 19.05,26.15) startOffset 0 endOffset 7 height 119.00: " a Path"40 RenderSVGText {text} at (0,0) size 124x100 contains 1 chunk(s) 41 RenderSVGTextPath {textPath} at (0,0) size 124x100 42 RenderSVGInlineText {#text} at (-8,-4) size 17x74 43 chunk 1 (middle anchor, vertical) text run 1 at (0.00,0.00) startOffset 0 endOffset 5 height 85.00: "Text " 44 RenderSVGTSpan {tspan} at (0,0) size 17x26 45 RenderSVGInlineText {#text} at (-8,70) size 17x26 46 chunk 1 (middle anchor, vertical) text run 2 at (0.00,85.00) startOffset 0 endOffset 2 height 34.00: "on" 47 RenderSVGTSpan {tspan} at (0,0) size 103x33 48 RenderSVGInlineText {#text} at (13,5) size 103x33 49 chunk 1 (middle anchor, vertical) text run 3 at (21.05,9.15) startOffset 0 endOffset 7 height 119.00: " a Path" 50 50 RenderSVGInlineText {#text} at (0,0) size 0x0 51 51 RenderSVGText {text} at (35,60) size 68x13 contains 1 chunk(s) … … 58 58 RenderSVGInlineText {#text} at (0,-10) size 102x13 59 59 chunk 1 text run 1 at (35.00,80.00) startOffset 0 endOffset 24 width 102.00: "glyph-orientation=\"0deg\"" 60 RenderSVGContainer {g} at (29 6,66) size 151x170[transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,70.00)}]60 RenderSVGContainer {g} at (292,66) size 155x159 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,70.00)}] 61 61 RenderSVGContainer {use} at (314.89,77.29) size 120.11x30.43 62 62 RenderSVGContainer {g} at (314.89,77.29) size 120.11x30.43 63 63 RenderPath {path} at (314.89,77.29) size 120.11x30.43 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M100.00,200.00C200.00,100.00,300.00,0.00,400.00,100.00C500.00,200.00,600.00,300.00,700.00,200.00C800.00,100.00,900.00,100.00,900.00,100.00"] 64 RenderSVGText {text} at ( -5,17) size 87x170contains 1 chunk(s)65 RenderSVGTextPath {textPath} at (0,0) size 8 7x17066 RenderSVGInlineText {#text} at ( 1,-21) size 9x8567 chunk 1 (end anchor, vertical) text run 1 at ( -4.50,17.00) startOffset 0 endOffset 5 height 85.00: "Text "68 RenderSVGTSpan {tspan} at (0,0) size 8x3569 RenderSVGInlineText {#text} at ( 11,63) size 8x3570 chunk 1 (end anchor, vertical) text run 2 at ( -4.00,102.00) startOffset 0 endOffset 2 height 34.00: "on"71 RenderSVGTSpan {tspan} at (0,0) size 8 6x16072 RenderSVGInlineText {#text} at ( 2,-11) size 86x16073 chunk 1 (end anchor, vertical) text run 3 at ( -3.50,27.16) startOffset 0 endOffset 7 height 119.00: " a Path"64 RenderSVGText {text} at (0,0) size 83x159 contains 1 chunk(s) 65 RenderSVGTextPath {textPath} at (0,0) size 83x159 66 RenderSVGInlineText {#text} at (-8,-4) size 17x74 67 chunk 1 (end anchor, vertical) text run 1 at (0.00,0.00) startOffset 0 endOffset 5 height 85.00: "Text " 68 RenderSVGTSpan {tspan} at (0,0) size 17x26 69 RenderSVGInlineText {#text} at (-8,70) size 17x26 70 chunk 1 (end anchor, vertical) text run 2 at (0.00,85.00) startOffset 0 endOffset 2 height 34.00: "on" 71 RenderSVGTSpan {tspan} at (0,0) size 83x151 72 RenderSVGInlineText {#text} at (-8,4) size 83x151 73 chunk 1 (end anchor, vertical) text run 3 at (0.00,10.16) startOffset 0 endOffset 7 height 119.00: " a Path" 74 74 RenderSVGInlineText {#text} at (0,0) size 0x0 75 75 RenderSVGText {text} at (35,60) size 73x13 contains 1 chunk(s) … … 82 82 RenderSVGInlineText {#text} at (0,-10) size 112x13 83 83 chunk 1 text run 1 at (35.00,80.00) startOffset 0 endOffset 26 width 112.00: "glyph-orientation=\"180deg\"" 84 RenderSVGContainer {g} at (14.89,17 7.29) size 132.11x192.71[transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,170.00)}]84 RenderSVGContainer {g} at (14.89,176) size 132.11x77 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,170.00)}] 85 85 RenderSVGContainer {use} at (14.89,177.29) size 120.11x30.43 86 86 RenderSVGContainer {g} at (14.89,177.29) size 120.11x30.43 87 87 RenderPath {path} at (14.89,177.29) size 120.11x30.43 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M100.00,200.00C200.00,100.00,300.00,0.00,400.00,100.00C500.00,200.00,600.00,300.00,700.00,200.00C800.00,100.00,900.00,100.00,900.00,100.00"] 88 RenderSVGText {text} at (7 4,34) size 58x187contains 1 chunk(s)89 RenderSVGTextPath {textPath} at (0,0) size 58x18790 RenderSVGInlineText {#text} at ( 3,-21) size 47x3791 chunk 1 (vertical) text run 1 at (7 4.72,34.60) startOffset 0 endOffset 5 height 85.00: "Text "92 RenderSVGTSpan {tspan} at (0,0) size 14x3693 RenderSVGInlineText {#text} at ( 47,8) size 14x3694 chunk 1 (vertical) text run 2 at (1 19.61,68.60) startOffset 0 endOffset 2 height 34.00: "on"95 RenderSVGTSpan {tspan} at (0,0) size 9x11996 RenderSVGInlineText {#text} at ( 45,47) size 9x11997 chunk 1 (vertical) text run 3 at (11 9.61,102.60) startOffset 0 endOffset 7 height 119.00: " a Path"88 RenderSVGText {text} at (75,15) size 70x40 contains 1 chunk(s) 89 RenderSVGTextPath {textPath} at (0,0) size 70x40 90 RenderSVGInlineText {#text} at (-5,7) size 39x24 91 chunk 1 (vertical) text run 1 at (75.93,29.60) startOffset 0 endOffset 5 height 85.00: "Text " 92 RenderSVGTSpan {tspan} at (0,0) size 25x24 93 RenderSVGInlineText {#text} at (16,-9) size 25x24 94 chunk 1 (vertical) text run 2 at (104.30,25.33) startOffset 0 endOffset 2 height 34.00: "on" 95 RenderSVGTSpan {tspan} at (0,0) size 28x37 96 RenderSVGInlineText {#text} at (37,-9) size 28x37 97 chunk 1 (vertical) text run 3 at (115.14,15.51) startOffset 0 endOffset 7 height 119.00: " a Path" 98 98 RenderSVGInlineText {#text} at (0,0) size 0x0 99 99 RenderSVGText {text} at (35,60) size 73x13 contains 1 chunk(s) … … 106 106 RenderSVGInlineText {#text} at (0,-10) size 112x13 107 107 chunk 1 text run 1 at (35.00,80.00) startOffset 0 endOffset 26 width 112.00: "glyph-orientation=\"270deg\"" 108 RenderSVGContainer {g} at (14 6,166) size 141x87[transform={m=((1.00,0.00)(0.00,1.00)) t=(150.00,170.00)}]108 RenderSVGContainer {g} at (142,164) size 145x89 [transform={m=((1.00,0.00)(0.00,1.00)) t=(150.00,170.00)}] 109 109 RenderSVGContainer {use} at (164.89,177.29) size 120.11x30.43 110 110 RenderSVGContainer {g} at (164.89,177.29) size 120.11x30.43 111 111 RenderPath {path} at (164.89,177.29) size 120.11x30.43 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M100.00,200.00C200.00,100.00,300.00,0.00,400.00,100.00C500.00,200.00,600.00,300.00,700.00,200.00C800.00,100.00,900.00,100.00,900.00,100.00"] 112 RenderSVGText {text} at ( -5,17) size 129x85contains 1 chunk(s)113 RenderSVGTextPath {textPath} at (0,0) size 1 29x85114 RenderSVGInlineText {#text} at ( 1,-21) size 40x51115 chunk 1 (middle anchor, vertical) text run 1 at ( -4.50,17.00) startOffset 0 endOffset 5 height 85.00: "Text "116 RenderSVGTSpan {tspan} at (0,0) size 3 0x36117 RenderSVGInlineText {#text} at ( 65,-6) size 30x36118 chunk 1 (middle anchor, vertical) text run 2 at ( 49.23,27.16) startOffset 0 endOffset 2 height 34.00: "on"119 RenderSVGTSpan {tspan} at (0,0) size 46x70120 RenderSVGInlineText {#text} at ( 84,-6) size 46x70121 chunk 1 (middle anchor, vertical) text run 3 at (7 7.22,34.60) startOffset 0 endOffset 7 height 119.00: " a Path"112 RenderSVGText {text} at (0,0) size 141x81 contains 1 chunk(s) 113 RenderSVGTextPath {textPath} at (0,0) size 141x81 114 RenderSVGInlineText {#text} at (-8,-4) size 53x42 115 chunk 1 (middle anchor, vertical) text run 1 at (0.00,0.00) startOffset 0 endOffset 5 height 85.00: "Text " 116 RenderSVGTSpan {tspan} at (0,0) size 35x29 117 RenderSVGInlineText {#text} at (47,-6) size 35x29 118 chunk 1 (middle anchor, vertical) text run 2 at (53.23,10.16) startOffset 0 endOffset 2 height 34.00: "on" 119 RenderSVGTSpan {tspan} at (0,0) size 63x65 120 RenderSVGInlineText {#text} at (70,10) size 63x65 121 chunk 1 (middle anchor, vertical) text run 3 at (79.22,17.60) startOffset 0 endOffset 7 height 119.00: " a Path" 122 122 RenderSVGInlineText {#text} at (0,0) size 0x0 123 123 RenderSVGText {text} at (35,60) size 73x13 contains 1 chunk(s) … … 130 130 RenderSVGInlineText {#text} at (0,-10) size 102x13 131 131 chunk 1 text run 1 at (35.00,80.00) startOffset 0 endOffset 24 width 102.00: "glyph-orientation=\"0deg\"" 132 RenderSVGContainer {g} at ( 296,166) size 146x102[transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,170.00)}]132 RenderSVGContainer {g} at (314.89,173) size 127.11x80 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,170.00)}] 133 133 RenderSVGContainer {use} at (314.89,177.29) size 120.11x30.43 134 134 RenderSVGContainer {g} at (314.89,177.29) size 120.11x30.43 135 135 RenderPath {path} at (314.89,177.29) size 120.11x30.43 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M100.00,200.00C200.00,100.00,300.00,0.00,400.00,100.00C500.00,200.00,600.00,300.00,700.00,200.00C800.00,100.00,900.00,100.00,900.00,100.00"] 136 RenderSVGText {text} at ( -5,17) size 133x102contains 1 chunk(s)137 RenderSVGTextPath {textPath} at (0,0) size 133x102138 RenderSVGInlineText {#text} at ( 1,-21) size 9x85139 chunk 1 (end anchor, vertical) text run 1 at ( -4.50,17.00) startOffset 0 endOffset 5 height 85.00: "Text "140 RenderSVGTSpan {tspan} at (0,0) size 2 6x90141 RenderSVGInlineText {#text} at ( 11,-9) size 26x90142 chunk 1 (end anchor, vertical) text run 2 at ( -4.00,36.62) startOffset 0 endOffset 2 height 34.00: "on"143 RenderSVGTSpan {tspan} at (0,0) size 100x45144 RenderSVGInlineText {#text} at (3 4,-12) size 100x45145 chunk 1 (end anchor, vertical) text run 3 at ( 37.84,27.21) startOffset 0 endOffset 7 height 119.00: " a Path"136 RenderSVGText {text} at (55,11) size 83x41 contains 1 chunk(s) 137 RenderSVGTextPath {textPath} at (0,0) size 83x41 138 RenderSVGInlineText {#text} at (-5,-8) size 34x35 139 chunk 1 (end anchor, vertical) text run 1 at (55.21,11.19) startOffset 0 endOffset 5 height 85.00: "Text " 140 RenderSVGTSpan {tspan} at (0,0) size 20x21 141 RenderSVGInlineText {#text} at (25,4) size 20x21 142 chunk 1 (end anchor, vertical) text run 2 at (79.00,31.74) startOffset 0 endOffset 2 height 34.00: "on" 143 RenderSVGTSpan {tspan} at (0,0) size 40x38 144 RenderSVGInlineText {#text} at (38,-5) size 40x38 145 chunk 1 (end anchor, vertical) text run 3 at (92.05,18.07) startOffset 0 endOffset 7 height 119.00: " a Path" 146 146 RenderSVGInlineText {#text} at (0,0) size 0x0 147 147 RenderSVGText {text} at (35,60) size 78x13 contains 1 chunk(s) … … 154 154 RenderSVGInlineText {#text} at (0,-10) size 107x13 155 155 chunk 1 text run 1 at (35.00,80.00) startOffset 0 endOffset 25 width 107.00: "glyph-orientation=\"90deg\"" 156 RenderSVGContainer {g} at (14.89,27 5) size 132.11x162[transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,270.00)}]156 RenderSVGContainer {g} at (14.89,272) size 132.11x156 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,270.00)}] 157 157 RenderSVGContainer {use} at (14.89,277.29) size 120.11x30.43 158 158 RenderSVGContainer {g} at (14.89,277.29) size 120.11x30.43 159 159 RenderPath {path} at (14.89,277.29) size 120.11x30.43 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M100.00,200.00C200.00,100.00,300.00,0.00,400.00,100.00C500.00,200.00,600.00,300.00,700.00,200.00C800.00,100.00,900.00,100.00,900.00,100.00"] 160 RenderSVGText {text} at ( 46,26) size 85x162contains 1 chunk(s)161 RenderSVGTextPath {textPath} at (0,0) size 8 5x162162 RenderSVGInlineText {#text} at ( 1,-21) size 58x44163 chunk 1 (vertical) text run 1 at ( 46.63,26.40) startOffset 0 endOffset 5 height 85.00: "Text "164 RenderSVGTSpan {tspan} at (0,0) size 1 5x36165 RenderSVGInlineText {#text} at ( 71,-18) size 15x36166 chunk 1 (vertical) text run 2 at (1 17.54,35.46) startOffset 0 endOffset 2 height 34.00: "on"167 RenderSVGTSpan {tspan} at (0,0) size 9x120168 RenderSVGInlineText {#text} at ( 71,21) size 9x120169 chunk 1 (vertical) text run 3 at (1 17.54,69.46) startOffset 0 endOffset 7 height 119.00: " a Path"160 RenderSVGText {text} at (51,9) size 89x156 contains 1 chunk(s) 161 RenderSVGTextPath {textPath} at (0,0) size 89x156 162 RenderSVGInlineText {#text} at (-10,-7) size 74x37 163 chunk 1 (vertical) text run 1 at (51.13,9.40) startOffset 0 endOffset 5 height 85.00: "Text " 164 RenderSVGTSpan {tspan} at (0,0) size 19x31 165 RenderSVGInlineText {#text} at (57,-7) size 19x31 166 chunk 1 (vertical) text run 2 at (121.54,18.46) startOffset 0 endOffset 2 height 34.00: "on" 167 RenderSVGTSpan {tspan} at (0,0) size 17x108 168 RenderSVGInlineText {#text} at (62,41) size 17x108 169 chunk 1 (vertical) text run 3 at (121.54,52.46) startOffset 0 endOffset 7 height 119.00: " a Path" 170 170 RenderSVGInlineText {#text} at (0,0) size 0x0 171 171 RenderSVGText {text} at (35,60) size 65x13 contains 1 chunk(s) … … 178 178 RenderSVGInlineText {#text} at (0,-10) size 112x13 179 179 chunk 1 text run 1 at (35.00,80.00) startOffset 0 endOffset 26 width 112.00: "glyph-orientation=\"180deg\"" 180 RenderSVGContainer {g} at (1 46,266) size 139x85[transform={m=((1.00,0.00)(0.00,1.00)) t=(150.00,270.00)}]180 RenderSVGContainer {g} at (150,262) size 135x81 [transform={m=((1.00,0.00)(0.00,1.00)) t=(150.00,270.00)}] 181 181 RenderSVGContainer {use} at (164.89,277.29) size 120.11x30.43 182 182 RenderSVGContainer {g} at (164.89,277.29) size 120.11x30.43 183 183 RenderPath {path} at (164.89,277.29) size 120.11x30.43 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M100.00,200.00C200.00,100.00,300.00,0.00,400.00,100.00C500.00,200.00,600.00,300.00,700.00,200.00C800.00,100.00,900.00,100.00,900.00,100.00"] 184 RenderSVGText {text} at ( -5,17) size 127x85contains 1 chunk(s)185 RenderSVGTextPath {textPath} at (0,0) size 127x85186 RenderSVGInlineText {#text} at ( 1,-21) size 9x85187 chunk 1 (middle anchor, vertical) text run 1 at ( -4.50,17.00) startOffset 0 endOffset 5 height 85.00: "Text "188 RenderSVGTSpan {tspan} at (0,0) size 34x29189 RenderSVGInlineText {#text} at ( 15,-16) size 34x29190 chunk 1 (middle anchor, vertical) text run 2 at ( 17.77,29.66) startOffset 0 endOffset 2 height 34.00: "on"191 RenderSVGTSpan {tspan} at (0,0) size 73x44192 RenderSVGInlineText {#text} at ( 55,-12) size 73x44193 chunk 1 (middle anchor, vertical) text run 3 at (4 9.13,26.40) startOffset 0 endOffset 7 height 119.00: " a Path"184 RenderSVGText {text} at (0,0) size 84x47 contains 1 chunk(s) 185 RenderSVGTextPath {textPath} at (0,0) size 84x47 186 RenderSVGInlineText {#text} at (0,-8) size 37x41 187 chunk 1 (middle anchor, vertical) text run 1 at (0.00,0.00) startOffset 0 endOffset 5 height 85.00: "Text " 188 RenderSVGTSpan {tspan} at (0,0) size 24x23 189 RenderSVGInlineText {#text} at (20,-8) size 24x23 190 chunk 1 (middle anchor, vertical) text run 2 at (30.83,11.21) startOffset 0 endOffset 2 height 34.00: "on" 191 RenderSVGTSpan {tspan} at (0,0) size 41x39 192 RenderSVGInlineText {#text} at (43,0) size 41x39 193 chunk 1 (middle anchor, vertical) text run 3 at (43.21,8.90) startOffset 0 endOffset 7 height 119.00: " a Path" 194 194 RenderSVGInlineText {#text} at (0,0) size 0x0 195 195 RenderSVGText {text} at (35,60) size 65x13 contains 1 chunk(s) … … 199 199 RenderSVGInlineText {#text} at (0,-10) size 86x13 200 200 chunk 1 text run 1 at (35.00,70.00) startOffset 0 endOffset 20 width 86.00: "text-anchor=\"middle\"" 201 RenderSVGContainer {g} at ( 296,266) size 146x204[transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,270.00)}]201 RenderSVGContainer {g} at (300,261) size 142x92 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,270.00)}] 202 202 RenderSVGContainer {use} at (314.89,277.29) size 120.11x30.43 203 203 RenderSVGContainer {g} at (314.89,277.29) size 120.11x30.43 204 204 RenderPath {path} at (314.89,277.29) size 120.11x30.43 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M100.00,200.00C200.00,100.00,300.00,0.00,400.00,100.00C500.00,200.00,600.00,300.00,700.00,200.00C800.00,100.00,900.00,100.00,900.00,100.00"] 205 RenderSVGText {text} at ( -5,17) size 39x204contains 1 chunk(s)206 RenderSVGTextPath {textPath} at (0,0) size 39x204207 RenderSVGInlineText {#text} at ( 1,-21) size 9x85208 chunk 1 (end anchor, vertical) text run 1 at ( -4.50,17.00) startOffset 0 endOffset 5 height 85.00: "Text "209 RenderSVGTSpan {tspan} at (0,0) size 8x 35210 RenderSVGInlineText {#text} at ( 11,63) size 8x35211 chunk 1 (end anchor, vertical) text run 2 at ( -4.00,102.00) startOffset 0 endOffset 2 height 34.00: "on"212 RenderSVGTSpan {tspan} at (0,0) size 39x193213 RenderSVGInlineText {#text} at ( 1,-10) size 39x193214 chunk 1 (end anchor, vertical) text run 3 at ( -4.00,29.66) startOffset 0 endOffset 7 height 119.00: " a Path"205 RenderSVGText {text} at (0,0) size 42x76 contains 1 chunk(s) 206 RenderSVGTextPath {textPath} at (0,0) size 42x76 207 RenderSVGInlineText {#text} at (0,-9) size 9x45 208 chunk 1 (end anchor, vertical) text run 1 at (0.00,0.00) startOffset 0 endOffset 5 height 85.00: "Text " 209 RenderSVGTSpan {tspan} at (0,0) size 8x25 210 RenderSVGInlineText {#text} at (0,13) size 8x25 211 chunk 1 (end anchor, vertical) text run 2 at (0.00,32.00) startOffset 0 endOffset 2 height 34.00: "on" 212 RenderSVGTSpan {tspan} at (0,0) size 42x64 213 RenderSVGInlineText {#text} at (0,3) size 42x64 214 chunk 1 (end anchor, vertical) text run 3 at (0.00,15.18) startOffset 0 endOffset 7 height 119.00: " a Path" 215 215 RenderSVGInlineText {#text} at (0,0) size 0x0 216 216 RenderSVGText {text} at (35,60) size 65x13 contains 1 chunk(s) … … 223 223 RenderSVGInlineText {#text} at (0,-10) size 107x13 224 224 chunk 1 text run 1 at (35.00,80.00) startOffset 0 endOffset 25 width 107.00: "glyph-orientation=\"90deg\"" 225 RenderSVGContainer {g} at ( 18,370.67) size 132x262.33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(10.00,370.00)}]225 RenderSVGContainer {g} at (22,370.67) size 118x87.33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(10.00,370.00)}] 226 226 RenderSVGContainer {use} at (39.70,370.67) size 90.60x49.33 227 227 RenderSVGContainer {g} at (39.70,370.67) size 90.60x49.33 228 228 RenderPath {path} at (39.70,370.67) size 90.60x49.33 [transform={m=((0.30,0.00)(0.00,0.50)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M100.00,100.00C100.00,0.00,400.00,0.00,400.00,100.00"] 229 RenderSVGText {text} at ( 27,29) size 132x257contains 1 chunk(s)230 RenderSVGTextPath {textPath} at (0,0) size 1 32x257231 RenderSVGTSpan {tspan} at (0,0) size 93x43232 RenderSVGInlineText {#text} at (-1 9,-23) size 93x43233 chunk 1 (vertical) text run 1 at ( 27.93,29.80) startOffset 0 endOffset 5 height 85.00: "super"234 RenderSVGInlineText {#text} at ( 75,-12) size 38x84235 chunk 1 (vertical) text run 2 at ( 99.82,36.19) startOffset 0 endOffset 5 height 85.00: " and "236 RenderSVGTSpan {tspan} at (0,0) size 19x44237 RenderSVGInlineText {#text} at ( 92,74) size 19x44238 chunk 1 (vertical) text run 3 at ( 115.84,114.39) startOffset 0 endOffset 3 height 51.00: "sub"239 RenderSVGInlineText {#text} at ( 97,114) size 8x120240 chunk 1 (vertical) text run 4 at ( 124.34,165.39) startOffset 0 endOffset 7 height 119.00: "scripts"229 RenderSVGText {text} at (30,12) size 118x48 contains 1 chunk(s) 230 RenderSVGTextPath {textPath} at (0,0) size 118x48 231 RenderSVGTSpan {tspan} at (0,0) size 36x42 232 RenderSVGInlineText {#text} at (-18,-8) size 36x42 233 chunk 1 (vertical) text run 1 at (30.11,22.60) startOffset 0 endOffset 5 height 85.00: "super" 234 RenderSVGInlineText {#text} at (13,-9) size 36x23 235 chunk 1 (vertical) text run 2 at (46.80,12.55) startOffset 0 endOffset 5 height 85.00: " and " 236 RenderSVGTSpan {tspan} at (0,0) size 23x21 237 RenderSVGInlineText {#text} at (47,0) size 23x21 238 chunk 1 (vertical) text run 3 at (77.44,12.55) startOffset 0 endOffset 3 height 51.00: "sub" 239 RenderSVGInlineText {#text} at (66,-3) size 34x42 240 chunk 1 (vertical) text run 4 at (98.71,17.58) startOffset 0 endOffset 7 height 119.00: "scripts" 241 241 RenderSVGInlineText {#text} at (0,0) size 0x0 242 242 RenderSVGText {text} at (20,65) size 88x13 contains 1 chunk(s) … … 249 249 RenderSVGInlineText {#text} at (0,-10) size 100x13 250 250 chunk 1 text run 1 at (20.00,85.00) startOffset 0 endOffset 24 width 100.00: "glyph-orientation=\"auto\"" 251 RenderSVGContainer {g} at (3 06,370.67) size 133x279.33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,370.00)}]251 RenderSVGContainer {g} at (318,370.67) size 109x77.33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,370.00)}] 252 252 RenderSVGContainer {use} at (329.70,370.67) size 90.60x49.33 253 253 RenderSVGContainer {g} at (329.70,370.67) size 90.60x49.33 254 254 RenderPath {path} at (329.70,370.67) size 90.60x49.33 [transform={m=((0.30,0.00)(0.00,0.50)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M100.00,100.00C100.00,0.00,400.00,0.00,400.00,100.00"] 255 RenderSVGText {text} at ( 26,29) size 133x273contains 1 chunk(s)256 RenderSVGTextPath {textPath} at (0,0) size 1 33x273257 RenderSVGTSpan {tspan} at (0,0) size 133x66258 RenderSVGInlineText {#text} at (- 20,-22) size 133x66259 chunk 1 (vertical) text run 1 at ( 26.93,29.80) startOffset 0 endOffset 8 height 136.00: "positive"260 RenderSVGInlineText {#text} at ( 86,29) size 9x86261 chunk 1 (vertical) text run 2 at ( 112.84,80.39) startOffset 0 endOffset 5 height 85.00: " and "262 RenderSVGTSpan {tspan} at (0,0) size 9x137263 RenderSVGInlineText {#text} at ( 83,114) size 9x137264 chunk 1 (vertical) text run 3 at ( 112.84,165.39) startOffset 0 endOffset 8 height 136.00: "negative"255 RenderSVGText {text} at (30,12) size 109x54 contains 1 chunk(s) 256 RenderSVGTextPath {textPath} at (0,0) size 109x54 257 RenderSVGTSpan {tspan} at (0,0) size 46x45 258 RenderSVGInlineText {#text} at (-12,-10) size 46x45 259 chunk 1 (vertical) text run 1 at (30.20,15.88) startOffset 0 endOffset 8 height 136.00: "positive" 260 RenderSVGInlineText {#text} at (30,-9) size 35x20 261 chunk 1 (vertical) text run 2 at (60.59,12.52) startOffset 0 endOffset 5 height 85.00: " and " 262 RenderSVGTSpan {tspan} at (0,0) size 38x47 263 RenderSVGInlineText {#text} at (59,-3) size 38x47 264 chunk 1 (vertical) text run 3 at (93.14,15.35) startOffset 0 endOffset 8 height 136.00: "negative" 265 265 RenderSVGInlineText {#text} at (0,0) size 0x0 266 266 RenderSVGText {text} at (20,65) size 97x13 contains 1 chunk(s) … … 270 270 RenderSVGInlineText {#text} at (0,-10) size 100x13 271 271 chunk 1 text run 1 at (20.00,75.00) startOffset 0 endOffset 24 width 100.00: "glyph-orientation=\"auto\"" 272 RenderSVGContainer {g} at (180,35 8.75) size 108x266.25[transform={m=((1.00,0.00)(0.00,1.00)) t=(180.00,370.00)}]273 RenderSVGContainer {g} at (18 3.75,358.75) size 104.25x266.25[transform={m=((0.75,0.00)(0.00,0.75)) t=(0.00,0.00)}]272 RenderSVGContainer {g} at (180,359.50) size 100x123.50 [transform={m=((1.00,0.00)(0.00,1.00)) t=(180.00,370.00)}] 273 RenderSVGContainer {g} at (180,359.50) size 90.23x90 [transform={m=((0.75,0.00)(0.00,0.75)) t=(0.00,0.00)}] 274 274 RenderSVGContainer {use} at (202.27,370.50) size 67.95x37 275 275 RenderSVGContainer {g} at (202.27,370.50) size 67.95x37 276 276 RenderPath {path} at (202.27,370.50) size 67.95x37 [transform={m=((0.30,0.00)(0.00,0.50)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M100.00,100.00C100.00,0.00,400.00,0.00,400.00,100.00"] 277 RenderSVGText {text} at ( 5,3) size 139x355contains 1 chunk(s)278 RenderSVGInlineText {#text} at ( 0,-18) size 10x276279 chunk 1 (vertical) text run 1 at ( 5.00,3.00) startOffset 0 endOffset 12 height 276.00: "before path "280 RenderSVGTextPath {textPath} at (0,0) size 134x106281 RenderSVGInlineText {#text} at ( 5,3) size 134x106282 chunk 1 (vertical) text run 2 at (3 3.14,35.71) startOffset 0 endOffset 7 height 161.00: "on path"283 RenderSVGInlineText {#text} at ( 107,106) size 10x231284 chunk 1 (vertical) text run 3 at ( 112.22,127.87) startOffset 0 endOffset 10 height 230.00: "after path"277 RenderSVGText {text} at (-13,-15) size 91x120 contains 1 chunk(s) 278 RenderSVGInlineText {#text} at (13,1) size 23x96 279 chunk 1 (vertical) text run 1 at (-13.00,-15.00) startOffset 0 endOffset 12 height 276.00: "before path " 280 RenderSVGTextPath {textPath} at (0,0) size 65x38 281 RenderSVGInlineText {#text} at (36,15) size 65x38 282 chunk 1 (vertical) text run 2 at (34.39,12.55) startOffset 0 endOffset 7 height 161.00: "on path" 283 RenderSVGInlineText {#text} at (80,42) size 24x79 284 chunk 1 (vertical) text run 3 at (54.56,27.55) startOffset 0 endOffset 10 height 230.00: "after path" 285 285 RenderSVGText {text} at (0,100) size 98x13 contains 1 chunk(s) 286 286 RenderSVGInlineText {#text} at (0,-10) size 98x13 -
trunk/LayoutTests/svg/text/text-align-05-b-expected.txt
r26504 r27680 3 3 layer at (0,0) size 800x600 4 4 RenderSVGRoot {svg} at (0.83,0.83) size 798.33x598.33 5 RenderSVGContainer {g} at (8.33,6.67) size 775x5 28.335 RenderSVGContainer {g} at (8.33,6.67) size 775x518.33 6 6 RenderSVGText {text} at (5,40) size 465x44 contains 1 chunk(s) 7 7 RenderSVGInlineText {#text} at (0,-36) size 465x44 8 8 chunk 1 text run 1 at (5.00,40.00) startOffset 0 endOffset 29 width 465.00: "Test 'text-anchor' (vertical)" 9 RenderSVGContainer {g} at (253.33, 95) size 195x44010 RenderSVGContainer {g} at (253.33, 95) size 195x440 [transform={m=((1.00,0.00)(0.00,1.00)) t=(160.00,150.00)}]11 RenderSVGContainer {g} at (253.33,245) size 28.33x2 909 RenderSVGContainer {g} at (253.33,85) size 195x440 10 RenderSVGContainer {g} at (253.33,85) size 195x440 [transform={m=((1.00,0.00)(0.00,1.00)) t=(160.00,150.00)}] 11 RenderSVGContainer {g} at (253.33,245) size 28.33x280 12 12 RenderPath {circle} at (261.67,245) size 10x10 [fill={[type=SOLID] [color=#000000]}] [data="M3.00,0.00L2.99,0.19L2.98,0.38L2.95,0.56L2.91,0.75L2.85,0.93L2.79,1.10L2.71,1.28L2.63,1.45L2.53,1.61L2.43,1.76L2.31,1.91L2.19,2.05L2.05,2.19L1.91,2.31L1.76,2.43L1.61,2.53L1.45,2.63L1.28,2.71L1.10,2.79L0.93,2.85L0.75,2.91L0.56,2.95L0.38,2.98L0.19,2.99L-0.00,3.00L-0.19,2.99L-0.38,2.98L-0.56,2.95L-0.75,2.91L-0.93,2.85L-1.10,2.79L-1.28,2.71L-1.45,2.63L-1.61,2.53L-1.76,2.43L-1.91,2.31L-2.05,2.19L-2.19,2.05L-2.31,1.91L-2.43,1.76L-2.53,1.61L-2.63,1.45L-2.71,1.28L-2.79,1.10L-2.85,0.93L-2.91,0.75L-2.95,0.56L-2.98,0.38L-2.99,0.19L-3.00,-0.00L-2.99,-0.19L-2.98,-0.38L-2.95,-0.56L-2.91,-0.75L-2.85,-0.93L-2.79,-1.10L-2.71,-1.28L-2.63,-1.45L-2.53,-1.61L-2.43,-1.76L-2.31,-1.91L-2.19,-2.05L-2.05,-2.19L-1.91,-2.31L-1.76,-2.43L-1.61,-2.53L-1.45,-2.63L-1.28,-2.71L-1.10,-2.79L-0.93,-2.85L-0.75,-2.91L-0.56,-2.95L-0.38,-2.98L-0.19,-2.99L0.00,-3.00L0.19,-2.99L0.38,-2.98L0.56,-2.95L0.75,-2.91L0.93,-2.85L1.10,-2.79L1.28,-2.71L1.45,-2.63L1.61,-2.53L1.76,-2.43L1.91,-2.31L2.05,-2.19L2.19,-2.05L2.31,-1.91L2.43,-1.76L2.53,-1.61L2.63,-1.45L2.71,-1.28L2.79,-1.10L2.85,-0.93L2.91,-0.75L2.95,-0.56L2.98,-0.38L2.99,-0.19"] 13 RenderSVGText {text} at (-9, 33) size 17x165 contains 1 chunk(s)13 RenderSVGText {text} at (-9,27) size 17x165 contains 1 chunk(s) 14 14 RenderSVGInlineText {#text} at (1,-27) size 17x165 15 chunk 1 (vertical) text run 1 at (-8.50, 33.00) startOffset 0 endOffset 5 height 165.00: "start"16 RenderSVGContainer {g} at (330, 95) size 41.67x330 [transform={m=((1.00,0.00)(0.00,1.00)) t=(50.00,0.00)}]15 chunk 1 (vertical) text run 1 at (-8.50,27.00) startOffset 0 endOffset 5 height 165.00: "start" 16 RenderSVGContainer {g} at (330,85) size 41.67x330 [transform={m=((1.00,0.00)(0.00,1.00)) t=(50.00,0.00)}] 17 17 RenderPath {circle} at (345,245) size 10x10 [fill={[type=SOLID] [color=#000000]}] [data="M3.00,0.00L2.99,0.19L2.98,0.38L2.95,0.56L2.91,0.75L2.85,0.93L2.79,1.10L2.71,1.28L2.63,1.45L2.53,1.61L2.43,1.76L2.31,1.91L2.19,2.05L2.05,2.19L1.91,2.31L1.76,2.43L1.61,2.53L1.45,2.63L1.28,2.71L1.10,2.79L0.93,2.85L0.75,2.91L0.56,2.95L0.38,2.98L0.19,2.99L-0.00,3.00L-0.19,2.99L-0.38,2.98L-0.56,2.95L-0.75,2.91L-0.93,2.85L-1.10,2.79L-1.28,2.71L-1.45,2.63L-1.61,2.53L-1.76,2.43L-1.91,2.31L-2.05,2.19L-2.19,2.05L-2.31,1.91L-2.43,1.76L-2.53,1.61L-2.63,1.45L-2.71,1.28L-2.79,1.10L-2.85,0.93L-2.91,0.75L-2.95,0.56L-2.98,0.38L-2.99,0.19L-3.00,-0.00L-2.99,-0.19L-2.98,-0.38L-2.95,-0.56L-2.91,-0.75L-2.85,-0.93L-2.79,-1.10L-2.71,-1.28L-2.63,-1.45L-2.53,-1.61L-2.43,-1.76L-2.31,-1.91L-2.19,-2.05L-2.05,-2.19L-1.91,-2.31L-1.76,-2.43L-1.61,-2.53L-1.45,-2.63L-1.28,-2.71L-1.10,-2.79L-0.93,-2.85L-0.75,-2.91L-0.56,-2.95L-0.38,-2.98L-0.19,-2.99L0.00,-3.00L0.19,-2.99L0.38,-2.98L0.56,-2.95L0.75,-2.91L0.93,-2.85L1.10,-2.79L1.28,-2.71L1.45,-2.63L1.61,-2.53L1.76,-2.43L1.91,-2.31L2.05,-2.19L2.19,-2.05L2.31,-1.91L2.43,-1.76L2.53,-1.61L2.63,-1.45L2.71,-1.28L2.79,-1.10L2.85,-0.93L2.91,-0.75L2.95,-0.56L2.98,-0.38L2.99,-0.19"] 18 RenderSVGText {text} at (-13,- 66) size 25x198 contains 1 chunk(s)18 RenderSVGText {text} at (-13,-72) size 25x198 contains 1 chunk(s) 19 19 RenderSVGInlineText {#text} at (1,-27) size 25x198 20 chunk 1 (middle anchor, vertical) text run 1 at (-12.50,- 66.00) startOffset 0 endOffset 6 height 198.00: "middle"21 RenderSVGContainer {g} at (420.00, 95) size 28.33x165[transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,0.00)}]20 chunk 1 (middle anchor, vertical) text run 1 at (-12.50,-72.00) startOffset 0 endOffset 6 height 198.00: "middle" 21 RenderSVGContainer {g} at (420.00,85) size 28.33x170 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,0.00)}] 22 22 RenderPath {circle} at (428.33,245) size 10x10 [fill={[type=SOLID] [color=#000000]}] [data="M3.00,0.00L2.99,0.19L2.98,0.38L2.95,0.56L2.91,0.75L2.85,0.93L2.79,1.10L2.71,1.28L2.63,1.45L2.53,1.61L2.43,1.76L2.31,1.91L2.19,2.05L2.05,2.19L1.91,2.31L1.76,2.43L1.61,2.53L1.45,2.63L1.28,2.71L1.10,2.79L0.93,2.85L0.75,2.91L0.56,2.95L0.38,2.98L0.19,2.99L-0.00,3.00L-0.19,2.99L-0.38,2.98L-0.56,2.95L-0.75,2.91L-0.93,2.85L-1.10,2.79L-1.28,2.71L-1.45,2.63L-1.61,2.53L-1.76,2.43L-1.91,2.31L-2.05,2.19L-2.19,2.05L-2.31,1.91L-2.43,1.76L-2.53,1.61L-2.63,1.45L-2.71,1.28L-2.79,1.10L-2.85,0.93L-2.91,0.75L-2.95,0.56L-2.98,0.38L-2.99,0.19L-3.00,-0.00L-2.99,-0.19L-2.98,-0.38L-2.95,-0.56L-2.91,-0.75L-2.85,-0.93L-2.79,-1.10L-2.71,-1.28L-2.63,-1.45L-2.53,-1.61L-2.43,-1.76L-2.31,-1.91L-2.19,-2.05L-2.05,-2.19L-1.91,-2.31L-1.76,-2.43L-1.61,-2.53L-1.45,-2.63L-1.28,-2.71L-1.10,-2.79L-0.93,-2.85L-0.75,-2.91L-0.56,-2.95L-0.38,-2.98L-0.19,-2.99L0.00,-3.00L0.19,-2.99L0.38,-2.98L0.56,-2.95L0.75,-2.91L0.93,-2.85L1.10,-2.79L1.28,-2.71L1.45,-2.63L1.61,-2.53L1.76,-2.43L1.91,-2.31L2.05,-2.19L2.19,-2.05L2.31,-1.91L2.43,-1.76L2.53,-1.61L2.63,-1.45L2.71,-1.28L2.79,-1.10L2.85,-0.93L2.91,-0.75L2.95,-0.56L2.98,-0.38L2.99,-0.19"] 23 RenderSVGText {text} at (-9,- 66) size 17x99 contains 1 chunk(s)23 RenderSVGText {text} at (-9,-72) size 17x99 contains 1 chunk(s) 24 24 RenderSVGInlineText {#text} at (1,-27) size 17x99 25 chunk 1 (end anchor, vertical) text run 1 at (-8.50,- 66.00) startOffset 0 endOffset 3 height 99.00: "end"25 chunk 1 (end anchor, vertical) text run 1 at (-8.50,-72.00) startOffset 0 endOffset 3 height 99.00: "end" 26 26 RenderSVGText {text} at (10,340) size 264x46 contains 1 chunk(s) 27 27 RenderSVGInlineText {#text} at (0,-36) size 264x46 -
trunk/LayoutTests/svg/text/text-align-06-b-expected.txt
r26504 r27680 2 2 RenderView at (0,0) size 800x600 3 3 layer at (0,0) size 800x600 4 RenderSVGRoot {svg} at (0,0.83) size 801.67x 604.175 RenderSVGContainer {g} at (0,6.67) size 801.67x5 98.334 RenderSVGRoot {svg} at (0,0.83) size 801.67x598.33 5 RenderSVGContainer {g} at (0,6.67) size 801.67x588.33 6 6 RenderSVGText {text} at (0,40) size 481x44 contains 1 chunk(s) 7 7 RenderSVGInlineText {#text} at (0,-36) size 481x44 8 8 chunk 1 text run 1 at (0.00,40.00) startOffset 0 endOffset 31 width 481.00: "Test 'baseline-shift' (vertic.)" 9 RenderSVGContainer {g} at (136.67,1 10) size 488.33x49510 RenderSVGContainer {g} at (136.67,1 10) size 488.33x495 [transform={m=((1.00,0.00)(0.00,1.00)) t=(90.00,60.00)}]11 RenderSVGText {text} at (-9, 33) size 24x165 contains 1 chunk(s)9 RenderSVGContainer {g} at (136.67,100) size 488.33x495 10 RenderSVGContainer {g} at (136.67,100) size 488.33x495 [transform={m=((1.00,0.00)(0.00,1.00)) t=(90.00,60.00)}] 11 RenderSVGText {text} at (-9,27) size 24x165 contains 1 chunk(s) 12 12 RenderSVGInlineText {#text} at (1,-27) size 17x66 13 chunk 1 (vertical) text run 1 at (-8.50, 33.00) startOffset 0 endOffset 2 height 66.00: "te"13 chunk 1 (vertical) text run 1 at (-8.50,27.00) startOffset 0 endOffset 2 height 66.00: "te" 14 14 RenderSVGTSpan {tspan} at (0,0) size 17x33 15 15 RenderSVGInlineText {#text} at (8,39) size 17x33 16 chunk 1 (vertical) text run 2 at (-1.50,9 9.00) startOffset 0 endOffset 1 height 33.00: "7"16 chunk 1 (vertical) text run 2 at (-1.50,93.00) startOffset 0 endOffset 1 height 33.00: "7" 17 17 RenderSVGInlineText {#text} at (2,72) size 15x66 18 chunk 1 (vertical) text run 3 at (-7.50,1 32.00) startOffset 0 endOffset 2 height 66.00: "xt"19 RenderSVGText {text} at (45, 33) size 44x264 contains 1 chunk(s)18 chunk 1 (vertical) text run 3 at (-7.50,126.00) startOffset 0 endOffset 2 height 66.00: "xt" 19 RenderSVGText {text} at (45,27) size 44x264 contains 1 chunk(s) 20 20 RenderSVGInlineText {#text} at (26,-27) size 18x66 21 chunk 1 (vertical) text run 1 at (71.50, 33.00) startOffset 0 endOffset 2 height 66.00: "te"21 chunk 1 (vertical) text run 1 at (71.50,27.00) startOffset 0 endOffset 2 height 66.00: "te" 22 22 RenderSVGTSpan {tspan} at (0,0) size 28x132 23 23 RenderSVGInlineText {#text} at (0,39) size 28x132 24 chunk 1 (vertical) text run 2 at (45.50,9 9.00) startOffset 0 endOffset 4 height 132.00: "-70%"24 chunk 1 (vertical) text run 2 at (45.50,93.00) startOffset 0 endOffset 4 height 132.00: "-70%" 25 25 RenderSVGInlineText {#text} at (27,171) size 16x66 26 chunk 1 (vertical) text run 3 at (72.50,2 31.00) startOffset 0 endOffset 2 height 66.00: "xt"27 RenderSVGText {text} at (155, 33) size 34x231 contains 1 chunk(s)26 chunk 1 (vertical) text run 3 at (72.50,225.00) startOffset 0 endOffset 2 height 66.00: "xt" 27 RenderSVGText {text} at (155,27) size 34x231 contains 1 chunk(s) 28 28 RenderSVGInlineText {#text} at (16,-27) size 18x66 29 chunk 1 (vertical) text run 1 at (171.50, 33.00) startOffset 0 endOffset 2 height 66.00: "te"29 chunk 1 (vertical) text run 1 at (171.50,27.00) startOffset 0 endOffset 2 height 66.00: "te" 30 30 RenderSVGTSpan {tspan} at (0,0) size 17x99 31 31 RenderSVGInlineText {#text} at (0,39) size 17x99 32 chunk 1 (vertical) text run 2 at (155.00,9 9.00) startOffset 0 endOffset 3 height 99.00: "sub"32 chunk 1 (vertical) text run 2 at (155.00,93.00) startOffset 0 endOffset 3 height 99.00: "sub" 33 33 RenderSVGTSpan {tspan} at (0,0) size 16x33 34 34 RenderSVGInlineText {#text} at (17,138) size 16x33 35 chunk 1 (vertical) text run 3 at (172.50,19 8.00) startOffset 0 endOffset 1 height 33.00: "x"35 chunk 1 (vertical) text run 3 at (172.50,192.00) startOffset 0 endOffset 1 height 33.00: "x" 36 36 RenderSVGInlineText {#text} at (21,171) size 8x33 37 chunk 1 (vertical) text run 4 at (176.00,2 31.00) startOffset 0 endOffset 1 height 33.00: "t"38 RenderSVGText {text} at (251, 33) size 34x297 contains 1 chunk(s)37 chunk 1 (vertical) text run 4 at (176.00,225.00) startOffset 0 endOffset 1 height 33.00: "t" 38 RenderSVGText {text} at (251,27) size 34x297 contains 1 chunk(s) 39 39 RenderSVGInlineText {#text} at (0,-27) size 18x66 40 chunk 1 (vertical) text run 1 at (251.50, 33.00) startOffset 0 endOffset 2 height 66.00: "te"40 chunk 1 (vertical) text run 1 at (251.50,27.00) startOffset 0 endOffset 2 height 66.00: "te" 41 41 RenderSVGTSpan {tspan} at (0,0) size 17x165 42 42 RenderSVGInlineText {#text} at (17,39) size 17x165 43 chunk 1 (vertical) text run 2 at (268.00,9 9.00) startOffset 0 endOffset 5 height 165.00: "super"43 chunk 1 (vertical) text run 2 at (268.00,93.00) startOffset 0 endOffset 5 height 165.00: "super" 44 44 RenderSVGTSpan {tspan} at (0,0) size 16x33 45 45 RenderSVGInlineText {#text} at (1,204) size 16x33 46 chunk 1 (vertical) text run 3 at (252.50,2 64.00) startOffset 0 endOffset 1 height 33.00: "x"46 chunk 1 (vertical) text run 3 at (252.50,258.00) startOffset 0 endOffset 1 height 33.00: "x" 47 47 RenderSVGInlineText {#text} at (5,237) size 8x33 48 chunk 1 (vertical) text run 4 at (256.00,29 7.00) startOffset 0 endOffset 1 height 33.00: "t"48 chunk 1 (vertical) text run 4 at (256.00,291.00) startOffset 0 endOffset 1 height 33.00: "t" 49 49 RenderSVGText {text} at (10,340) size 264x46 contains 1 chunk(s) 50 50 RenderSVGInlineText {#text} at (0,-36) size 264x46 -
trunk/LayoutTests/svg/text/text-path-01-b-expected.checksum
r26517 r27680 1 1ef25584f31026a8a8473d7e34a6df93 1 3d2b7f78eb78ba2c082b02f3e05feabd -
trunk/WebCore/ChangeLog
r27677 r27680 1 2007-11-10 Nikolas Zimmermann <zimmermann@kde.org> 2 3 Reviewed by Eric. 4 5 Fixes: http://bugs.webkit.org/show_bug.cgi?id=15937 (Add glyph-orientation-horizontal/vertical support) 6 Fixes: http://bugs.webkit.org/show_bug.cgi?id=13971 (text-anchor support on vertical text seems slightly off) 7 8 Add glyph-orientation-* support for text & textPath. (90/180/270 and 'auto') 9 Also fix all vertical text handling - for text & textPath! (especially latin1 characters auto orientation in vertical writing modes) 10 11 * WebCore.pro: Add platform/UnicodeRange.cpp to build 12 * WebCore.xcodeproj/project.pbxproj: Dito. 13 * rendering/SVGCharacterLayoutInfo.cpp: Respect orientationShiftX/Y & angle in characterTransform() 14 (WebCore::SVGChar::characterTransform): 15 * rendering/SVGCharacterLayoutInfo.h: New variables. 16 (WebCore::SVGCharOnPath::SVGCharOnPath): 17 (WebCore::SVGChar::SVGChar): 18 * rendering/SVGRootInlineBox.cpp: Added glyph-orientation-* handling. 19 (WebCore::glyphOrientationToAngle): 20 (WebCore::glyphOrientationIsMultiplyOf180Degrees): 21 (WebCore::calculateGlyphAdvanceAndShiftRespectingOrientation): 22 (WebCore::cummulatedHeightOfInlineBoxCharacterRange): 23 (WebCore::cummulatedWidthOrHeightOfTextChunk): 24 (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox): 25 1 26 2007-11-10 Timothy Hatcher <timothy@apple.com> 2 27 -
trunk/WebCore/WebCore.pro
r27598 r27680 701 701 platform/TextStream.cpp \ 702 702 platform/Timer.cpp \ 703 platform/UnicodeRange.cpp \ 703 704 platform/Widget.cpp \ 704 705 rendering/AutoTableLayout.cpp \ -
trunk/WebCore/WebCore.xcodeproj/project.pbxproj
r27598 r27680 2926 2926 B275358E0B053A66002CE64F /* IconMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = B275358D0B053A66002CE64F /* IconMac.mm */; }; 2927 2927 B277B4040B22F37C0004BEC6 /* GraphicsContextMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = B277B4030B22F37C0004BEC6 /* GraphicsContextMac.mm */; }; 2928 B287B22E0CE66A820054D390 /* UnicodeRange.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B287B22C0CE66A820054D390 /* UnicodeRange.cpp */; }; 2929 B287B22F0CE66A820054D390 /* UnicodeRange.h in Headers */ = {isa = PBXBuildFile; fileRef = B287B22D0CE66A820054D390 /* UnicodeRange.h */; }; 2928 2930 B297BC700B3C14CF0045A590 /* JSSVGPathSegListCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B297BC6F0B3C14CF0045A590 /* JSSVGPathSegListCustom.cpp */; }; 2929 2931 B2A015A80AF6CD53006BCE0E /* GraphicsContext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B2A015920AF6CD53006BCE0E /* GraphicsContext.cpp */; }; … … 6787 6789 B275358D0B053A66002CE64F /* IconMac.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; path = IconMac.mm; sourceTree = "<group>"; }; 6788 6790 B277B4030B22F37C0004BEC6 /* GraphicsContextMac.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; path = GraphicsContextMac.mm; sourceTree = "<group>"; }; 6791 B287B22C0CE66A820054D390 /* UnicodeRange.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = UnicodeRange.cpp; sourceTree = "<group>"; }; 6792 B287B22D0CE66A820054D390 /* UnicodeRange.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = UnicodeRange.h; sourceTree = "<group>"; }; 6789 6793 B297BC6F0B3C14CF0045A590 /* JSSVGPathSegListCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = JSSVGPathSegListCustom.cpp; sourceTree = "<group>"; }; 6790 6794 B2A015920AF6CD53006BCE0E /* GraphicsContext.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = GraphicsContext.cpp; sourceTree = "<group>"; }; … … 11555 11559 93309EA1099EB78C0056E581 /* Timer.cpp */, 11556 11560 9305B24C098F1B6B00C28855 /* Timer.h */, 11561 B287B22C0CE66A820054D390 /* UnicodeRange.cpp */, 11562 B287B22D0CE66A820054D390 /* UnicodeRange.h */, 11557 11563 9380F47109A11AB4001FDB34 /* Widget.cpp */, 11558 11564 9380F47209A11AB4001FDB34 /* Widget.h */, … … 13929 13935 93309DF8099E64920056E581 /* markup.h in Headers */, 13930 13936 93309E1E099E64920056E581 /* visible_units.h in Headers */, 13937 B287B22F0CE66A820054D390 /* UnicodeRange.h in Headers */, 13931 13938 ); 13932 13939 runOnlyForDeploymentPostprocessing = 0; … … 13967 13974 isa = PBXProject; 13968 13975 buildConfigurationList = 149C284308902B11008A9EFC /* Build configuration list for PBXProject "WebCore" */; 13969 compatibilityVersion = "Xcode 2.4";13970 13976 hasScannedForEncodings = 1; 13971 13977 knownRegions = ( … … 15491 15497 93309DF7099E64920056E581 /* markup.cpp in Sources */, 15492 15498 93309E1D099E64920056E581 /* visible_units.cpp in Sources */, 15499 B287B22E0CE66A820054D390 /* UnicodeRange.cpp in Sources */, 15493 15500 ); 15494 15501 runOnlyForDeploymentPostprocessing = 0; -
trunk/WebCore/rendering/SVGCharacterLayoutInfo.cpp
r27395 r27680 516 516 ctm.rotate(angle); 517 517 518 if (pathData) 518 if (pathData) { 519 519 ctm.scale(pathData->xScale, pathData->yScale); 520 521 ctm.translate(-x, -y);522 523 // Apply transformations which have to be applied orthogonal to the path524 // Only happens in textPath layouts.525 if (pathData)526 520 ctm.translate(pathData->xShift, pathData->yShift); 527 521 ctm.rotate(pathData->orientationAngle); 522 } 523 524 ctm.translate(orientationShiftX - x, orientationShiftY - y); 528 525 return ctm; 529 526 } -
trunk/WebCore/rendering/SVGCharacterLayoutInfo.h
r27395 r27680 184 184 , xShift(0.0f) 185 185 , yShift(0.0f) 186 , orientationAngle(0.0f) 186 187 , visible(true) 187 188 { … … 193 194 float xShift; 194 195 float yShift; 196 197 float orientationAngle; 195 198 196 199 // Determines wheter this char is visible (ie. false for chars "off" the text layout path) … … 203 206 , y(0.0f) 204 207 , angle(0.0f) 208 , orientationShiftX(0.0f) 209 , orientationShiftY(0.0f) 205 210 , pathData() 206 211 , drawnSeperated(false) … … 216 221 float y; 217 222 float angle; 223 224 float orientationShiftX; 225 float orientationShiftY; 218 226 219 227 RefPtr<SVGCharOnPath> pathData; -
trunk/WebCore/rendering/SVGRootInlineBox.cpp
r26888 r27680 41 41 #include "Text.h" 42 42 #include "TextStyle.h" 43 #include "UnicodeRange.h" 43 44 44 45 #include <float.h> … … 53 54 { 54 55 return style->writingMode() == WM_TBRL || style->writingMode() == WM_TB; 56 } 57 58 static inline float glyphOrientationToAngle(const SVGRenderStyle* svgStyle, bool isVerticalText, const UChar& character) 59 { 60 switch (isVerticalText ? svgStyle->glyphOrientationVertical() : svgStyle->glyphOrientationHorizontal()) { 61 case GO_AUTO: 62 { 63 // Spec: Fullwidth ideographic and fullwidth Latin text will be set with a glyph-orientation of 0-degrees. 64 // Text which is not fullwidth will be set with a glyph-orientation of 90-degrees. 65 unsigned int unicodeRange = findCharUnicodeRange(character); 66 if (unicodeRange == cRangeSetLatin || unicodeRange == cRangeArabic) 67 return 90.0f; 68 69 return 0.0f; 70 } 71 case GO_90DEG: 72 return 90.0f; 73 case GO_180DEG: 74 return 180.0f; 75 case GO_270DEG: 76 return 270.0f; 77 case GO_0DEG: 78 default: 79 return 0.0f; 80 } 81 } 82 83 static inline bool glyphOrientationIsMultiplyOf180Degrees(float orientationAngle) 84 { 85 return fabsf(fmodf(orientationAngle, 180.0f)) == 0.0f; 86 } 87 88 static inline float calculateGlyphAdvanceAndShiftRespectingOrientation(bool isVerticalText, float orientationAngle, float glyphWidth, float glyphHeight, const Font& font, SVGChar& svgChar, float& xOrientationShift, float& yOrientationShift) 89 { 90 bool orientationIsMultiplyOf180Degrees = glyphOrientationIsMultiplyOf180Degrees(orientationAngle); 91 92 // The function is based on spec requirements: 93 // 94 // Spec: If the 'glyph-orientation-horizontal' results in an orientation angle that is not a multiple of 95 // of 180 degrees, then the current text position is incremented according to the vertical metrics of the glyph. 96 // 97 // Spec: If if the 'glyph-orientation-vertical' results in an orientation angle that is not a multiple of 98 // 180 degrees,then the current text position is incremented according to the horizontal metrics of the glyph. 99 100 // vertical orientation handling 101 if (isVerticalText) { 102 if (orientationAngle == 0.0f) { 103 xOrientationShift = -glyphWidth / 2.0f; 104 yOrientationShift = font.ascent(); 105 } else if (orientationAngle == 90.0f) { 106 xOrientationShift = -glyphHeight; 107 yOrientationShift = font.descent(); 108 svgChar.orientationShiftY = -font.ascent(); 109 } else if (orientationAngle == 270.0f) { 110 xOrientationShift = glyphHeight; 111 yOrientationShift = font.descent(); 112 svgChar.orientationShiftX = -glyphWidth; 113 svgChar.orientationShiftY = -font.ascent(); 114 } else if (orientationAngle == 180.0f) { 115 yOrientationShift = font.ascent(); 116 svgChar.orientationShiftX = -glyphWidth / 2.0f; 117 svgChar.orientationShiftY = font.ascent() - font.descent(); 118 } 119 120 // vertical advance calculation 121 if (orientationAngle != 0.0f && !orientationIsMultiplyOf180Degrees) 122 return glyphWidth; 123 124 return glyphHeight; 125 } 126 127 // horizontal orientation handling 128 if (orientationAngle == 90.0f) { 129 xOrientationShift = glyphWidth / 2.0f; 130 yOrientationShift = -font.descent(); 131 svgChar.orientationShiftX = -glyphWidth / 2.0f - font.descent(); 132 svgChar.orientationShiftY = font.descent(); 133 } else if (orientationAngle == 270.0f) { 134 xOrientationShift = -glyphWidth / 2.0f; 135 yOrientationShift = -font.descent(); 136 svgChar.orientationShiftX = -glyphWidth / 2.0f + font.descent(); 137 svgChar.orientationShiftY = glyphHeight; 138 } else if (orientationAngle == 180.0f) { 139 xOrientationShift = glyphWidth / 2.0f; 140 svgChar.orientationShiftX = -glyphWidth / 2.0f; 141 svgChar.orientationShiftY = font.ascent() - font.descent(); 142 } 143 144 // horizontal advance calculation 145 if (orientationAngle != 0.0f && !orientationIsMultiplyOf180Degrees) 146 return glyphHeight; 147 148 return glyphWidth; 55 149 } 56 150 … … 425 519 const Font& font = text->style()->font(); 426 520 427 // FIXME: Wild guess - works for the W3C 1.1 vertical text examples - not really heavily tested so far.428 521 return (range.endOffset - range.startOffset) * (font.ascent() + font.descent()); 429 522 } … … 490 583 SVGChar& currentCharacter = *itSearch; 491 584 492 int offset = box->m_reversed ? box->end() - i - positionOffset + 1 : box->start() + i + positionOffset - 1;585 int offset = box->m_reversed ? box->end() - i - positionOffset + 1 : box->start() + i + positionOffset - 1; 493 586 494 587 if (calcWidthOnly) { … … 877 970 878 971 unsigned length = textBox->len(); 879 bool isVerticalText = isVerticalWritingMode(style->svgStyle()); 972 973 const SVGRenderStyle* svgStyle = style->svgStyle(); 974 bool isVerticalText = isVerticalWritingMode(svgStyle); 880 975 881 976 for (unsigned i = 0; i < length; ++i) { … … 968 1063 } 969 1064 1065 float orientationAngle = glyphOrientationToAngle(svgStyle, isVerticalText, *currentCharacter); 1066 1067 float xOrientationShift = 0.0f; 1068 float yOrientationShift = 0.0f; 1069 float glyphAdvance = calculateGlyphAdvanceAndShiftRespectingOrientation(isVerticalText, orientationAngle, glyphWidth, glyphHeight, 1070 font, svgChar, xOrientationShift, yOrientationShift); 1071 970 1072 // Handle textPath layout mode 971 1073 if (info.inPathLayout()) { 972 float glyphAdvance = isVerticalText ? glyphHeight : glyphWidth;973 1074 float extraAdvance = isVerticalText ? dy : dx; 974 975 1075 float newOffset = FLT_MIN; 976 1076 … … 979 1079 else if (assignedY && isVerticalText) 980 1080 newOffset = info.cury; 1081 1082 float correctedGlyphAdvance = glyphAdvance; 981 1083 982 1084 // Handle lengthAdjust="spacingAndGlyphs" by specifying per-character scale operations … … 985 1087 svgChar.pathData->yScale = info.pathChunkLength / info.pathTextLength; 986 1088 spacing *= svgChar.pathData->yScale; 987 glyphAdvance *= svgChar.pathData->yScale;1089 correctedGlyphAdvance *= svgChar.pathData->yScale; 988 1090 } else { 989 1091 svgChar.pathData->xScale = info.pathChunkLength / info.pathTextLength; 990 1092 spacing *= svgChar.pathData->xScale; 991 glyphAdvance *= svgChar.pathData->xScale;1093 correctedGlyphAdvance *= svgChar.pathData->xScale; 992 1094 } 993 1095 } … … 997 1099 info.pathExtraAdvance += spacing; 998 1100 999 svgChar.pathData->visible = info.nextPathLayoutPointAndAngle( glyphAdvance, extraAdvance, newOffset);1101 svgChar.pathData->visible = info.nextPathLayoutPointAndAngle(correctedGlyphAdvance, extraAdvance, newOffset); 1000 1102 svgChar.drawnSeperated = true; 1001 1103 … … 1020 1122 svgChar.x = info.curx; 1021 1123 svgChar.y = info.cury; 1124 svgChar.angle = info.angle; 1022 1125 1023 1126 // For text paths any shift (dx/dy/baseline-shift) has to be applied after the rotation 1024 1127 if (!info.inPathLayout()) { 1025 svgChar.x += info.shiftx; 1026 svgChar.y += info.shifty; 1128 svgChar.x += info.shiftx + xOrientationShift; 1129 svgChar.y += info.shifty + yOrientationShift; 1130 1131 if (orientationAngle != 0.0f) 1132 svgChar.angle += orientationAngle; 1133 1134 if (svgChar.angle != 0.0f) 1135 svgChar.drawnSeperated = true; 1027 1136 } else { 1028 svgChar.pathData->xShift = info.shiftx; 1029 svgChar.pathData->yShift = info.shifty; 1137 svgChar.pathData->orientationAngle = orientationAngle; 1138 1139 if (isVerticalText) 1140 svgChar.angle -= 90.0f; 1141 1142 svgChar.pathData->xShift = info.shiftx + xOrientationShift; 1143 svgChar.pathData->yShift = info.shifty + yOrientationShift; 1030 1144 1031 1145 // Translate to glyph midpoint 1032 1146 if (isVerticalText) { 1033 1147 svgChar.pathData->xShift += info.dx; 1034 svgChar.pathData->yShift -= glyph Height/ 2.0f;1148 svgChar.pathData->yShift -= glyphAdvance / 2.0f; 1035 1149 } else { 1036 svgChar.pathData->xShift -= glyph Width/ 2.0f;1150 svgChar.pathData->xShift -= glyphAdvance / 2.0f; 1037 1151 svgChar.pathData->yShift += info.dy; 1038 1152 } 1039 1153 } 1040 1041 // Correct character position for vertical text layout1154 1155 // Advance to new position 1042 1156 if (isVerticalText) { 1043 1157 svgChar.drawnSeperated = true; 1044 svgChar.x -= glyphWidth / 2.0f; 1045 svgChar.y += glyphHeight; 1046 } 1047 1048 // Record angle if specified 1049 svgChar.angle = info.angle; 1050 if (svgChar.angle != 0.0f) 1051 svgChar.drawnSeperated = true; 1052 1053 // Advance to new position 1054 if (isVerticalText) 1055 info.cury += glyphHeight + spacing; 1056 else 1057 info.curx += glyphWidth + spacing; 1158 info.cury += glyphAdvance + spacing; 1159 } else 1160 info.curx += glyphAdvance + spacing; 1058 1161 1059 1162 // Advance to next character
Note: See TracChangeset
for help on using the changeset viewer.