rapier-markdown-kit 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/LICENSE +40 -0
  2. package/README.md +102 -0
  3. package/dist/agent/vendor/pretext/LICENSE +21 -0
  4. package/dist/agent/vendor/pretext/NOTICE +15 -0
  5. package/dist/agent/vendor/pretext/SOURCE.json +85 -0
  6. package/dist/agent/vendor/pretext/analysis.js +1234 -0
  7. package/dist/agent/vendor/pretext/bidi.js +151 -0
  8. package/dist/agent/vendor/pretext/generated/bidi-data.js +3831 -0
  9. package/dist/agent/vendor/pretext/layout.js +308 -0
  10. package/dist/agent/vendor/pretext/line-break.js +636 -0
  11. package/dist/agent/vendor/pretext/line-text.js +44 -0
  12. package/dist/agent/vendor/pretext/measurement.js +189 -0
  13. package/dist/agent/vendor/pretext/package.json +3 -0
  14. package/dist/agent/vendor/pretext/rich-inline.js +291 -0
  15. package/dist/agent/will.mjs +167 -0
  16. package/dist/kit/assets.mjs +3 -0
  17. package/dist/kit/conformance/01-inline.expected.json +82 -0
  18. package/dist/kit/conformance/01-inline.md +10 -0
  19. package/dist/kit/conformance/02-width-x-align.expected.json +83 -0
  20. package/dist/kit/conformance/02-width-x-align.md +12 -0
  21. package/dist/kit/conformance/03-wrap-around-silhouette.expected.json +177 -0
  22. package/dist/kit/conformance/03-wrap-around-silhouette.md +12 -0
  23. package/dist/kit/conformance/04-wrap-box.expected.json +173 -0
  24. package/dist/kit/conformance/04-wrap-box.md +12 -0
  25. package/dist/kit/conformance/05-behind.expected.json +122 -0
  26. package/dist/kit/conformance/05-behind.md +12 -0
  27. package/dist/kit/conformance/06-front.expected.json +122 -0
  28. package/dist/kit/conformance/06-front.md +12 -0
  29. package/dist/kit/conformance/07-rotate-raster.expected.json +179 -0
  30. package/dist/kit/conformance/07-rotate-raster.md +12 -0
  31. package/dist/kit/conformance/08-drawing-rotation.expected.json +188 -0
  32. package/dist/kit/conformance/08-drawing-rotation.md +12 -0
  33. package/dist/kit/conformance/09-drawing-ring-interior.expected.json +229 -0
  34. package/dist/kit/conformance/09-drawing-ring-interior.md +12 -0
  35. package/dist/kit/conformance/10-both-sides.expected.json +221 -0
  36. package/dist/kit/conformance/10-both-sides.md +10 -0
  37. package/dist/kit/conformance/11-neighbour-skips-image.expected.json +160 -0
  38. package/dist/kit/conformance/11-neighbour-skips-image.md +13 -0
  39. package/dist/kit/conformance/12-heading-barrier.expected.json +164 -0
  40. package/dist/kit/conformance/12-heading-barrier.md +12 -0
  41. package/dist/kit/conformance/13-rtl-text.expected.json +179 -0
  42. package/dist/kit/conformance/13-rtl-text.md +8 -0
  43. package/dist/kit/conformance/README.md +99 -0
  44. package/dist/kit/conformance/measurer.mjs +0 -0
  45. package/dist/kit/conformance/run.mjs +123 -0
  46. package/dist/kit/index.mjs +6 -0
  47. package/dist/kit/layout.mjs +2 -0
  48. package/dist/kit/marks.mjs +2 -0
  49. package/dist/kit/model.mjs +3 -0
  50. package/dist/kit/will.mjs +2 -0
  51. package/dist/layout/model.mjs +364 -0
  52. package/dist/spec/md-assets.mjs +323 -0
  53. package/dist/spec/md-layout.mjs +117 -0
  54. package/dist/spec/md-marks.mjs +78 -0
  55. package/package.json +33 -0
@@ -0,0 +1,82 @@
1
+ {
2
+ "document": "01-inline.md",
3
+ "measurer": {
4
+ "font": "normal 400 17.6px/30.8px Geist, system-ui, sans-serif",
5
+ "letterSpacing": 0,
6
+ "lineHeight": 30.8,
7
+ "direction": "ltr",
8
+ "columnWidth": 354
9
+ },
10
+ "anchorText": "This paragraph comes before the picture and stays the anchor whenever the block right after the picture cannot be one -- another image paragraph, or a heading -- so the words below keep their own separate life.",
11
+ "anchorFlowed": false,
12
+ "picture": null,
13
+ "profileHint": null,
14
+ "lines": [
15
+ {
16
+ "left": 0,
17
+ "top": 5,
18
+ "right": 292.86,
19
+ "bottom": 25
20
+ },
21
+ {
22
+ "left": 0,
23
+ "top": 35.78,
24
+ "right": 345.38,
25
+ "bottom": 55.78
26
+ },
27
+ {
28
+ "left": 0,
29
+ "top": 66.56,
30
+ "right": 342.81,
31
+ "bottom": 86.56
32
+ },
33
+ {
34
+ "left": 0,
35
+ "top": 97.34,
36
+ "right": 339.66,
37
+ "bottom": 117.34
38
+ },
39
+ {
40
+ "left": 0,
41
+ "top": 128.13,
42
+ "right": 329.39,
43
+ "bottom": 148.13
44
+ },
45
+ {
46
+ "left": 0,
47
+ "top": 158.91,
48
+ "right": 204.16,
49
+ "bottom": 178.91
50
+ }
51
+ ],
52
+ "glyphWidths": {
53
+ "T": 10.747,
54
+ "h": 11.151,
55
+ "i": 4.888,
56
+ "s": 9.166,
57
+ " ": 5.593,
58
+ "p": 11.168,
59
+ "a": 10.781,
60
+ "r": 7.233,
61
+ "g": 11.168,
62
+ "c": 9.673,
63
+ "o": 10.764,
64
+ "m": 17.138,
65
+ "e": 10.824,
66
+ "b": 11.168,
67
+ "f": 6.194,
68
+ "t": 6.898,
69
+ "u": 11.151,
70
+ "n": 11.151,
71
+ "d": 11.168,
72
+ "y": 10.412,
73
+ "w": 14.389,
74
+ "v": 10.412,
75
+ "l": 4.888,
76
+ "k": 10.189,
77
+ "-": 6.349,
78
+ ",": 5.593,
79
+ ".": 5.593
80
+ },
81
+ "measurements": {}
82
+ }
@@ -0,0 +1,10 @@
1
+
2
+ # Inline, no layout comment
3
+
4
+ This paragraph comes before the picture and stays the anchor whenever the block right after the picture cannot be one -- another image paragraph, or a heading -- so the words below keep their own separate life.
5
+
6
+ ![A plain inline picture][opaque]
7
+
8
+ This paragraph comes after the picture and is its ordinary anchor whenever nothing else stands in the way, wrapping beside it line by line the way the fixture is built to show plainly.
9
+
10
+ [opaque]: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAAoCAYAAACiu5n/AAAAQ0lEQVR42u3PMQEAAAQAMHl0095PC48dC7DI6vkkhIWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFby0f7s8anCQmZQAAAABJRU5ErkJggg==
@@ -0,0 +1,83 @@
1
+ {
2
+ "document": "02-width-x-align.md",
3
+ "measurer": {
4
+ "font": "normal 400 17.6px/30.8px Geist, system-ui, sans-serif",
5
+ "letterSpacing": 0,
6
+ "lineHeight": 30.8,
7
+ "direction": "ltr",
8
+ "columnWidth": 354
9
+ },
10
+ "anchorText": "This paragraph comes after the picture and is its ordinary anchor whenever nothing else stands in the way, wrapping beside it line by line the way the fixture is built to show plainly.",
11
+ "anchorFlowed": false,
12
+ "picture": {
13
+ "natural": {
14
+ "width": 60,
15
+ "height": 40
16
+ },
17
+ "occupancy": null,
18
+ "layout": "<!--md-layout:v1 width=40% x=70%-->",
19
+ "rect": null
20
+ },
21
+ "profileHint": null,
22
+ "lines": [
23
+ {
24
+ "left": 0,
25
+ "top": 5,
26
+ "right": 344.89,
27
+ "bottom": 25
28
+ },
29
+ {
30
+ "left": 0,
31
+ "top": 35.78,
32
+ "right": 316.97,
33
+ "bottom": 55.78
34
+ },
35
+ {
36
+ "left": 0,
37
+ "top": 66.56,
38
+ "right": 275.27,
39
+ "bottom": 86.56
40
+ },
41
+ {
42
+ "left": 0,
43
+ "top": 97.34,
44
+ "right": 340.47,
45
+ "bottom": 117.34
46
+ },
47
+ {
48
+ "left": 0,
49
+ "top": 128.13,
50
+ "right": 297.09,
51
+ "bottom": 148.13
52
+ }
53
+ ],
54
+ "glyphWidths": {
55
+ "T": 10.747,
56
+ "h": 11.151,
57
+ "i": 4.888,
58
+ "s": 9.166,
59
+ " ": 5.593,
60
+ "p": 11.168,
61
+ "a": 10.781,
62
+ "r": 7.233,
63
+ "g": 11.168,
64
+ "c": 9.673,
65
+ "o": 10.764,
66
+ "m": 17.138,
67
+ "e": 10.824,
68
+ "f": 6.194,
69
+ "t": 6.898,
70
+ "u": 11.151,
71
+ "n": 11.151,
72
+ "d": 11.168,
73
+ "y": 10.412,
74
+ "w": 14.389,
75
+ "v": 10.412,
76
+ "l": 4.888,
77
+ ",": 5.593,
78
+ "b": 11.168,
79
+ "x": 10.412,
80
+ ".": 5.593
81
+ },
82
+ "measurements": {}
83
+ }
@@ -0,0 +1,12 @@
1
+
2
+ # Width, x and align
3
+
4
+ ## A right-aligned heading <!--md-layout:v1 align=right-->
5
+
6
+ A centered paragraph of its own. <!--md-layout:v1 align=center-->
7
+
8
+ ![A sized, positioned picture][opaque] <!--md-layout:v1 width=40% x=70%-->
9
+
10
+ This paragraph comes after the picture and is its ordinary anchor whenever nothing else stands in the way, wrapping beside it line by line the way the fixture is built to show plainly.
11
+
12
+ [opaque]: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAAoCAYAAACiu5n/AAAAQ0lEQVR42u3PMQEAAAQAMHl0095PC48dC7DI6vkkhIWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFby0f7s8anCQmZQAAAABJRU5ErkJggg==
@@ -0,0 +1,177 @@
1
+ {
2
+ "document": "03-wrap-around-silhouette.md",
3
+ "measurer": {
4
+ "font": "normal 400 17.6px/30.8px Geist, system-ui, sans-serif",
5
+ "letterSpacing": 0,
6
+ "lineHeight": 30.8,
7
+ "direction": "ltr",
8
+ "columnWidth": 354
9
+ },
10
+ "anchorText": "This anchor paragraph carries enough ordinary prose that, once it wraps beside the picture at the column width this fixture records, it produces several distinct lines for the conformance runner to compare rather than only one.",
11
+ "anchorFlowed": true,
12
+ "picture": {
13
+ "natural": {
14
+ "width": 64,
15
+ "height": 64
16
+ },
17
+ "occupancy": null,
18
+ "layout": "<!--md-layout:v1 width=35% wrap=around x=20%-->",
19
+ "rect": {
20
+ "left": 8.84375,
21
+ "top": 0,
22
+ "right": 132.734375,
23
+ "bottom": 123.890625
24
+ }
25
+ },
26
+ "profileHint": {
27
+ "kind": "bands",
28
+ "descriptor": "||0.4792-0.5208|0.4583-0.5417|0.4375-0.5625|0.4167-0.5833|0.3958-0.6042|0.375-0.625|0.3542-0.6458|0.3333-0.6667|0.3125-0.6875|0.2917-0.7083|0.2708-0.7292|0.25-0.75|0.2292-0.7708|0.2083-0.7917|0.1875-0.8125|0.1667-0.8333|0.1458-0.8542|0.125-0.875|0.1042-0.8958|0.0833-0.9167|0.0625-0.9375|0.0417-0.9583|0.0417-0.9583|0.0625-0.9375|0.0833-0.9167|0.1042-0.8958|0.125-0.875|0.1458-0.8542|0.1667-0.8333|0.1875-0.8125|0.2083-0.7917|0.2292-0.7708|0.25-0.75|0.2708-0.7292|0.2917-0.7083|0.3125-0.6875|0.3333-0.6667|0.3542-0.6458|0.375-0.625|0.3958-0.6042|0.4167-0.5833|0.4375-0.5625|0.4583-0.5417|0.4792-0.5208||",
29
+ "note": "diamond.png's own alpha, sampled the same way alphaProfile does"
30
+ },
31
+ "lines": [
32
+ {
33
+ "left": 122.09,
34
+ "top": 0,
35
+ "right": 353.98,
36
+ "bottom": 30.8
37
+ },
38
+ {
39
+ "left": 142.75,
40
+ "top": 30.8,
41
+ "right": 354,
42
+ "bottom": 61.59
43
+ },
44
+ {
45
+ "left": 142.75,
46
+ "top": 61.59,
47
+ "right": 354,
48
+ "bottom": 92.39
49
+ },
50
+ {
51
+ "left": 124.67,
52
+ "top": 92.39,
53
+ "right": 353.98,
54
+ "bottom": 123.19
55
+ },
56
+ {
57
+ "left": 93.7,
58
+ "top": 123.19,
59
+ "right": 353.98,
60
+ "bottom": 153.98
61
+ },
62
+ {
63
+ "left": 0,
64
+ "top": 154,
65
+ "right": 354,
66
+ "bottom": 184.8
67
+ },
68
+ {
69
+ "left": 0,
70
+ "top": 184.8,
71
+ "right": 354,
72
+ "bottom": 215.59
73
+ },
74
+ {
75
+ "left": 0,
76
+ "top": 215.59,
77
+ "right": 354,
78
+ "bottom": 246.39
79
+ },
80
+ {
81
+ "left": 0,
82
+ "top": 246.39,
83
+ "right": 354,
84
+ "bottom": 277.19
85
+ }
86
+ ],
87
+ "glyphWidths": {
88
+ "T": 10.747,
89
+ "h": 11.151,
90
+ "i": 4.888,
91
+ "s": 9.166,
92
+ " ": 5.593,
93
+ "a": 10.781,
94
+ "n": 11.151,
95
+ "c": 9.673,
96
+ "o": 10.764,
97
+ "r": 7.233,
98
+ "p": 11.168,
99
+ "g": 11.168,
100
+ "e": 10.824,
101
+ "u": 11.151,
102
+ "d": 11.168,
103
+ "y": 10.412,
104
+ "t": 6.898,
105
+ ",": 5.593,
106
+ "w": 14.389,
107
+ "b": 11.168,
108
+ "l": 4.888,
109
+ "m": 17.138,
110
+ "f": 6.194,
111
+ "x": 10.412,
112
+ "v": 10.412,
113
+ ".": 5.593
114
+ },
115
+ "measurements": {
116
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000-": 6.349,
117
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000 ": 5.593,
118
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000This": 35.952,
119
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000T": 10.747,
120
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000h": 11.151,
121
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000i": 4.888,
122
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000s": 9.166,
123
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000anchor": 60.753,
124
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000a": 10.781,
125
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000n": 11.151,
126
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000c": 9.673,
127
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000o": 10.764,
128
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000r": 7.233,
129
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000paragraph": 91.465,
130
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000p": 11.168,
131
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000g": 11.168,
132
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000carries": 59.49,
133
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000e": 10.824,
134
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000enough": 66.209,
135
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000u": 11.151,
136
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000ordinary": 73.322,
137
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000d": 11.168,
138
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000y": 10.412,
139
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000prose": 48.769,
140
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000that,": 41.321,
141
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000t": 6.898,
142
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000,": 5.593,
143
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000once": 42.412,
144
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000it": 11.786,
145
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000wraps": 52.738,
146
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000w": 14.389,
147
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000beside": 58.039,
148
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000b": 11.168,
149
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000the": 28.873,
150
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000picture": 61.449,
151
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000at": 17.68,
152
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000column": 64.765,
153
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000l": 4.888,
154
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000m": 17.138,
155
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000width": 48.494,
156
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000this": 32.103,
157
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000fixture": 57.214,
158
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000f": 6.194,
159
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000x": 10.412,
160
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000records,": 70.959,
161
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000produces": 80.761,
162
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000several": 64.13,
163
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000v": 10.412,
164
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000distinct": 64.731,
165
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000lines": 40.917,
166
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000for": 24.191,
167
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000conformance": 115.038,
168
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000runner": 58.743,
169
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000to": 17.662,
170
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000compare": 77.196,
171
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000rather": 54.121,
172
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000than": 39.981,
173
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000only": 37.215,
174
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000one.": 38.332,
175
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000.": 5.593
176
+ }
177
+ }
@@ -0,0 +1,12 @@
1
+
2
+ # Wrap around a silhouette
3
+
4
+ This paragraph comes before the picture and stays the anchor whenever the block right after the picture cannot be one -- another image paragraph, or a heading -- so the words below keep their own separate life.
5
+
6
+ ![A silhouette picture][diamond] <!--md-layout:v1 width=35% wrap=around x=20%-->
7
+
8
+ This anchor paragraph carries enough ordinary prose that, once it wraps beside the picture at the column width this fixture records, it produces several distinct lines for the conformance runner to compare rather than only one.
9
+
10
+ A second sentence of plain reading prose, long enough on its own that a narrow column wraps it into more than a single line, keeps this paragraph a fair test of the line planner rather than a trivial one-line case that proves very little indeed.
11
+
12
+ [diamond]: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAA40lEQVR42u3bSQ6DMBAAQZ7N7zvXSNmAYHuWPtQ9akUJ2DPbvu9bZ5sB1n8IOgfgSbsAvNEmAF+UD8ABZQNwQrkAXFAmAH9IH4AbpA3AjdIFYIA0ARgofAAmCBuAicIFYIEwAVhoeQACWBaAQKYHIKBpAQhseAASGBaARG4PQEK3BSCxvwNQwOUAFHI6AAUdDkBhPwPQwMcANPISgIb8Bvgb4L+AzwE+Cfou4Nug5wGeCHkm6Kmw9wLeDHk36O2w8wFOiDgj5JSYc4JOijor7LS4+wJujLgz5NaYe4Nujro73MEDip6/b+F9FD0AAAAASUVORK5CYII=
@@ -0,0 +1,173 @@
1
+ {
2
+ "document": "04-wrap-box.md",
3
+ "measurer": {
4
+ "font": "normal 400 17.6px/30.8px Geist, system-ui, sans-serif",
5
+ "letterSpacing": 0,
6
+ "lineHeight": 30.8,
7
+ "direction": "ltr",
8
+ "columnWidth": 354
9
+ },
10
+ "anchorText": "This anchor paragraph carries enough ordinary prose that, once it wraps beside the picture at the column width this fixture records, it produces several distinct lines for the conformance runner to compare rather than only one.",
11
+ "anchorFlowed": true,
12
+ "picture": {
13
+ "natural": {
14
+ "width": 60,
15
+ "height": 40
16
+ },
17
+ "occupancy": null,
18
+ "layout": "<!--md-layout:v1 width=35% wrap=box x=75%-->",
19
+ "rect": {
20
+ "left": 203.546875,
21
+ "top": 0,
22
+ "right": 327.4375,
23
+ "bottom": 82.59375
24
+ }
25
+ },
26
+ "profileHint": null,
27
+ "lines": [
28
+ {
29
+ "left": 0,
30
+ "top": 0,
31
+ "right": 193.55,
32
+ "bottom": 30.8
33
+ },
34
+ {
35
+ "left": 0,
36
+ "top": 30.8,
37
+ "right": 193.55,
38
+ "bottom": 61.59
39
+ },
40
+ {
41
+ "left": 0,
42
+ "top": 61.59,
43
+ "right": 193.55,
44
+ "bottom": 92.39
45
+ },
46
+ {
47
+ "left": 0,
48
+ "top": 92.39,
49
+ "right": 193.55,
50
+ "bottom": 123.19
51
+ },
52
+ {
53
+ "left": 0,
54
+ "top": 123.19,
55
+ "right": 354,
56
+ "bottom": 153.98
57
+ },
58
+ {
59
+ "left": 0,
60
+ "top": 154,
61
+ "right": 354,
62
+ "bottom": 184.8
63
+ },
64
+ {
65
+ "left": 0,
66
+ "top": 184.8,
67
+ "right": 354,
68
+ "bottom": 215.59
69
+ },
70
+ {
71
+ "left": 0,
72
+ "top": 215.59,
73
+ "right": 354,
74
+ "bottom": 246.39
75
+ },
76
+ {
77
+ "left": 0,
78
+ "top": 246.39,
79
+ "right": 354,
80
+ "bottom": 277.19
81
+ }
82
+ ],
83
+ "glyphWidths": {
84
+ "T": 10.747,
85
+ "h": 11.151,
86
+ "i": 4.888,
87
+ "s": 9.166,
88
+ " ": 5.593,
89
+ "a": 10.781,
90
+ "n": 11.151,
91
+ "c": 9.673,
92
+ "o": 10.764,
93
+ "r": 7.233,
94
+ "p": 11.168,
95
+ "g": 11.168,
96
+ "e": 10.824,
97
+ "u": 11.151,
98
+ "d": 11.168,
99
+ "y": 10.412,
100
+ "t": 6.898,
101
+ ",": 5.593,
102
+ "w": 14.389,
103
+ "b": 11.168,
104
+ "l": 4.888,
105
+ "m": 17.138,
106
+ "f": 6.194,
107
+ "x": 10.412,
108
+ "v": 10.412,
109
+ ".": 5.593
110
+ },
111
+ "measurements": {
112
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000-": 6.349,
113
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000 ": 5.593,
114
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000This": 35.952,
115
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000T": 10.747,
116
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000h": 11.151,
117
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000i": 4.888,
118
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000s": 9.166,
119
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000anchor": 60.753,
120
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000a": 10.781,
121
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000n": 11.151,
122
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000c": 9.673,
123
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000o": 10.764,
124
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000r": 7.233,
125
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000paragraph": 91.465,
126
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000p": 11.168,
127
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000g": 11.168,
128
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000carries": 59.49,
129
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000e": 10.824,
130
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000enough": 66.209,
131
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000u": 11.151,
132
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000ordinary": 73.322,
133
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000d": 11.168,
134
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000y": 10.412,
135
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000prose": 48.769,
136
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000that,": 41.321,
137
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000t": 6.898,
138
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000,": 5.593,
139
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000once": 42.412,
140
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000it": 11.786,
141
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000wraps": 52.738,
142
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000w": 14.389,
143
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000beside": 58.039,
144
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000b": 11.168,
145
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000the": 28.873,
146
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000picture": 61.449,
147
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000at": 17.68,
148
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000column": 64.765,
149
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000l": 4.888,
150
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000m": 17.138,
151
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000width": 48.494,
152
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000this": 32.103,
153
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000fixture": 57.214,
154
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000f": 6.194,
155
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000x": 10.412,
156
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000records,": 70.959,
157
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000produces": 80.761,
158
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000several": 64.13,
159
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000v": 10.412,
160
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000distinct": 64.731,
161
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000lines": 40.917,
162
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000for": 24.191,
163
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000conformance": 115.038,
164
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000runner": 58.743,
165
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000to": 17.662,
166
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000compare": 77.196,
167
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000rather": 54.121,
168
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000than": 39.981,
169
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000only": 37.215,
170
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000one.": 38.332,
171
+ "normal 400 17.6px Geist, system-ui, sans-serif\u0000.": 5.593
172
+ }
173
+ }
@@ -0,0 +1,12 @@
1
+
2
+ # Wrap box
3
+
4
+ This paragraph comes before the picture and stays the anchor whenever the block right after the picture cannot be one -- another image paragraph, or a heading -- so the words below keep their own separate life.
5
+
6
+ ![A tight-box picture][opaque] <!--md-layout:v1 width=35% wrap=box x=75%-->
7
+
8
+ This anchor paragraph carries enough ordinary prose that, once it wraps beside the picture at the column width this fixture records, it produces several distinct lines for the conformance runner to compare rather than only one.
9
+
10
+ A second sentence of plain reading prose, long enough on its own that a narrow column wraps it into more than a single line, keeps this paragraph a fair test of the line planner rather than a trivial one-line case that proves very little indeed.
11
+
12
+ [opaque]: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAAoCAYAAACiu5n/AAAAQ0lEQVR42u3PMQEAAAQAMHl0095PC48dC7DI6vkkhIWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFby0f7s8anCQmZQAAAABJRU5ErkJggg==