diff options
Diffstat (limited to 'testing/web-platform/tests/css/css-writing-modes/test-plan')
16 files changed, 1064 insertions, 0 deletions
diff --git a/testing/web-platform/tests/css/css-writing-modes/test-plan/img/figure-over_and_under-fail.svg b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/figure-over_and_under-fail.svg new file mode 100644 index 0000000000..76b4849969 --- /dev/null +++ b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/figure-over_and_under-fail.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" standalone="yes"?> + +<svg version="1.1" viewBox="0.0 0.0 400.0 240.0" fill="none" stroke="none" stroke-linecap="square" stroke-miterlimit="10" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><clipPath id="p.0"><path d="m0 0l400.0 0l0 240.0l-400.0 0l0 -240.0z" clip-rule="nonzero"></path></clipPath><g clip-path="url(#p.0)"><path fill="#000000" fill-opacity="0.0" d="m0 0l400.0 0l0 240.0l-400.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m24.0 200.0l192.0 0l0 16.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m24.0 24.0l192.0 0l0 16.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" d="m216.0 63.244095l102.39371 0l0 113.51181l-102.39371 0z" fill-rule="nonzero"></path><path fill="#000000" d="m262.19684 107.549995q10.0 7.8125 17.1875 16.5625l-6.5625 6.8749924q-7.8125 -9.687492 -16.874985 -18.124992l6.2499847 -5.3125z" fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" d="m107.43044 63.244095l102.3937 0l0 113.51181l-102.3937 0z" fill-rule="nonzero"></path><path fill="#000000" d="m153.62729 107.549995q10.0 7.8125 17.1875 16.5625l-6.5625 6.8749924q-7.8125 -9.687492 -16.875 -18.124992l6.25 -5.3125z" fill-rule="nonzero"></path></g></svg> + diff --git a/testing/web-platform/tests/css/css-writing-modes/test-plan/img/figure-over_and_under-pass.svg b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/figure-over_and_under-pass.svg new file mode 100644 index 0000000000..fe24716121 --- /dev/null +++ b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/figure-over_and_under-pass.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" standalone="yes"?> + +<svg version="1.1" viewBox="0.0 0.0 400.0 240.0" fill="none" stroke="none" stroke-linecap="square" stroke-miterlimit="10" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><clipPath id="p.0"><path d="m0 0l400.0 0l0 240.0l-400.0 0l0 -240.0z" clip-rule="nonzero"></path></clipPath><g clip-path="url(#p.0)"><path fill="#000000" fill-opacity="0.0" d="m0 0l400.0 0l0 240.0l-400.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m24.0 200.0l192.0 0l0 16.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m24.0 24.0l192.0 0l0 16.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" d="m216.0 63.244095l102.39371 0l0 113.51181l-102.39371 0z" fill-rule="nonzero"></path><path fill="#000000" d="m262.19684 107.549995q10.0 7.8125 17.1875 16.5625l-6.5625 6.8749924q-7.8125 -9.687492 -16.874985 -18.124992l6.2499847 -5.3125z" fill-rule="nonzero"></path></g></svg> + diff --git a/testing/web-platform/tests/css/css-writing-modes/test-plan/img/figure-rendering-tcu.svg b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/figure-rendering-tcu.svg new file mode 100644 index 0000000000..5b03e4264d --- /dev/null +++ b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/figure-rendering-tcu.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" standalone="yes"?> + +<svg version="1.1" viewBox="0.0 0.0 960.0 720.0" fill="none" stroke="none" stroke-linecap="square" stroke-miterlimit="10" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><clipPath id="p.0"><path d="m0 0l960.0 0l0 720.0l-960.0 0l0 -720.0z" clip-rule="nonzero"></path></clipPath><g clip-path="url(#p.0)"><path fill="#000000" fill-opacity="0.0" d="m0 0l960.0 0l0 720.0l-960.0 0z" fill-rule="nonzero"></path><path fill="#cfe2f3" d="m63.885353 13.473236l115.87162 0l0 115.87163l-115.87162 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="m63.885353 13.473236l115.87162 0l0 115.87163l-115.87162 0z" fill-rule="nonzero"></path><path fill="#000000" d="m110.18054 88.489044l9.09375 -12.9375l-8.421875 -11.953125l5.28125 0l3.8125 5.828125q1.078125 1.671875 1.734375 2.796875q1.03125 -1.546875 1.90625 -2.75l4.1875 -5.875l5.046875 0l-8.609375 11.71875l9.265625 13.171875l-5.1875 0l-5.109375 -7.734375l-1.359375 -2.09375l-6.53125 9.828125l-5.109375 0z" fill-rule="nonzero"></path><path fill="#cfe2f3" d="m224.5116 13.472183l115.880615 0l0 115.880615l-115.880615 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="m224.5116 13.472183l115.880615 0l0 115.880615l-115.880615 0z" fill-rule="nonzero"></path><path fill="#000000" d="m286.99487 88.492485l-4.21875 0l0 -26.890625q-1.53125 1.453125 -4.0 2.90625q-2.46875 1.453125 -4.4375 2.1875l0 -4.078125q3.53125 -1.671875 6.171875 -4.03125q2.65625 -2.375 3.765625 -4.59375l2.71875 0l0 34.5z" fill-rule="nonzero"></path><path fill="#cfe2f3" d="m224.5116 129.3528l115.880615 0l0 115.8806l-115.880615 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="m224.5116 129.3528l115.880615 0l0 115.8806l-115.880615 0z" fill-rule="nonzero"></path><path fill="#000000" d="m293.27612 200.3106l0 4.0625l-22.71875 0q-0.046875 -1.53125 0.5 -2.9375q0.859375 -2.3125 2.765625 -4.5625q1.921875 -2.25 5.53125 -5.203125q5.59375 -4.59375 7.5625 -7.28125q1.96875 -2.6875 1.96875 -5.078125q0 -2.5 -1.796875 -4.21875q-1.78125 -1.734375 -4.671875 -1.734375q-3.046875 0 -4.875 1.828125q-1.828125 1.828125 -1.84375 5.0625l-4.34375 -0.4375q0.453125 -4.859375 3.359375 -7.390625q2.90625 -2.546875 7.796875 -2.546875q4.953125 0 7.828125 2.75q2.890625 2.734375 2.890625 6.78125q0 2.0625 -0.84375 4.0625q-0.84375 1.984375 -2.8125 4.1875q-1.953125 2.203125 -6.5 6.046875q-3.796875 3.1875 -4.875 4.328125q-1.078125 1.140625 -1.78125 2.28125l16.859375 0z" fill-rule="nonzero"></path><path fill="#cfe2f3" d="m224.5116 245.2334l115.880615 0l0 115.880615l-115.880615 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="m224.5116 245.2334l115.880615 0l0 115.880615l-115.880615 0z" fill-rule="nonzero"></path><path fill="#000000" d="m271.11987 311.17557l4.21875 -0.5625q0.734375 3.59375 2.46875 5.171875q1.75 1.578125 4.265625 1.578125q2.96875 0 5.015625 -2.0625q2.0625 -2.0625 2.0625 -5.109375q0 -2.90625 -1.90625 -4.78125q-1.890625 -1.890625 -4.828125 -1.890625q-1.1875 0 -2.96875 0.46875l0.46875 -3.703125q0.421875 0.046875 0.671875 0.046875q2.703125 0 4.859375 -1.40625q2.15625 -1.40625 2.15625 -4.34375q0 -2.3125 -1.578125 -3.828125q-1.5625 -1.53125 -4.046875 -1.53125q-2.46875 0 -4.109375 1.546875q-1.640625 1.546875 -2.109375 4.640625l-4.21875 -0.75q0.78125 -4.25 3.515625 -6.578125q2.75 -2.328125 6.828125 -2.328125q2.8125 0 5.171875 1.203125q2.375 1.203125 3.625 3.296875q1.25 2.078125 1.25 4.421875q0 2.234375 -1.203125 4.0625q-1.1875 1.828125 -3.53125 2.90625q3.046875 0.703125 4.734375 2.921875q1.6875 2.203125 1.6875 5.53125q0 4.5 -3.28125 7.640625q-3.28125 3.125 -8.296875 3.125q-4.515625 0 -7.515625 -2.6875q-2.984375 -2.703125 -3.40625 -7.0z" fill-rule="nonzero"></path><path fill="#cfe2f3" d="m63.313194 417.94904l115.871635 0l0 115.87164l-115.871635 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="m63.313194 417.94904l115.871635 0l0 115.87164l-115.871635 0z" fill-rule="nonzero"></path><path fill="#000000" d="m109.60838 492.96484l9.09375 -12.9375l-8.421875 -11.953125l5.28125 0l3.8125 5.828125q1.078125 1.671875 1.734375 2.796875q1.03125 -1.546875 1.90625 -2.75l4.1875 -5.875l5.046875 0l-8.609375 11.71875l9.265625 13.171875l-5.1875 0l-5.109375 -7.734375l-1.359375 -2.09375l-6.53125 9.828125l-5.109375 0z" fill-rule="nonzero"></path><path fill="#cfe2f3" d="m223.93929 417.94904l39.008408 0l0 115.87164l-39.008408 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="m223.93929 417.94904l39.008408 0l0 115.87164l-39.008408 0z" fill-rule="nonzero"></path><path fill="#000000" d="m247.98647 492.96484l-4.21875 0l0 -26.890625q-1.53125 1.453125 -4.0 2.90625q-2.46875 1.453125 -4.4375 2.1875l0 -4.078125q3.53125 -1.671875 6.171875 -4.03125q2.65625 -2.375 3.765625 -4.59375l2.71875 0l0 34.5z" fill-rule="nonzero"></path><path fill="#cfe2f3" d="m262.9477 417.94904l39.008423 0l0 115.87164l-39.008423 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="m262.9477 417.94904l39.008423 0l0 115.87164l-39.008423 0z" fill-rule="nonzero"></path><path fill="#000000" d="m293.27612 488.90234l0 4.0625l-22.71875 0q-0.046875 -1.53125 0.5 -2.9375q0.859375 -2.3125 2.765625 -4.5625q1.921875 -2.25 5.53125 -5.203125q5.59375 -4.59375 7.5625 -7.28125q1.96875 -2.6875 1.96875 -5.078125q0 -2.5 -1.796875 -4.21875q-1.78125 -1.734375 -4.671875 -1.734375q-3.046875 0 -4.875 1.828125q-1.828125 1.828125 -1.84375 5.0625l-4.34375 -0.4375q0.453125 -4.859375 3.359375 -7.390625q2.90625 -2.546875 7.796875 -2.546875q4.953125 0 7.828125 2.75q2.890625 2.734375 2.890625 6.78125q0 2.0625 -0.84375 4.0625q-0.84375 1.984375 -2.8125 4.1875q-1.953125 2.203125 -6.5 6.046875q-3.796875 3.1875 -4.875 4.328125q-1.078125 1.140625 -1.78125 2.28125l16.859375 0z" fill-rule="nonzero"></path><path fill="#cfe2f3" d="m301.95612 417.94904l39.008392 0l0 115.87164l-39.008392 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="m301.95612 417.94904l39.008392 0l0 115.87164l-39.008392 0z" fill-rule="nonzero"></path><path fill="#000000" d="m310.1283 483.88672l4.21875 -0.5625q0.734375 3.59375 2.46875 5.171875q1.75 1.578125 4.265625 1.578125q2.96875 0 5.015625 -2.0625q2.0625 -2.0625 2.0625 -5.109375q0 -2.90625 -1.90625 -4.78125q-1.890625 -1.890625 -4.828125 -1.890625q-1.1875 0 -2.96875 0.46875l0.46875 -3.703125q0.421875 0.046875 0.671875 0.046875q2.703125 0 4.859375 -1.40625q2.15625 -1.40625 2.15625 -4.34375q0 -2.3125 -1.578125 -3.828125q-1.5625 -1.53125 -4.046875 -1.53125q-2.46875 0 -4.109375 1.546875q-1.640625 1.546875 -2.109375 4.640625l-4.21875 -0.75q0.78125 -4.25 3.515625 -6.578125q2.75 -2.328125 6.828125 -2.328125q2.8125 0 5.171875 1.203125q2.375 1.203125 3.625 3.296875q1.25 2.078125 1.25 4.421875q0 2.234375 -1.203125 4.0625q-1.1875 1.828125 -3.53125 2.90625q3.046875 0.703125 4.734375 2.921875q1.6875 2.203125 1.6875 5.53125q0 4.5 -3.28125 7.640625q-3.28125 3.125 -8.296875 3.125q-4.515625 0 -7.515625 -2.6875q-2.984375 -2.703125 -3.40625 -7.0z" fill-rule="nonzero"></path><path fill="#cfe2f3" d="m63.293144 590.65405l115.90551 0l0 115.87402l-115.90551 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="m63.293144 590.65405l115.90551 0l0 115.87402l-115.90551 0z" fill-rule="nonzero"></path><path fill="#000000" d="m109.60528 665.6711l9.09375 -12.9375l-8.421875 -11.953125l5.28125 0l3.8125 5.828125q1.078125 1.671875 1.734375 2.796875q1.03125 -1.546875 1.90625 -2.75l4.1875 -5.875l5.0468826 0l-8.609383 11.71875l9.265633 13.171875l-5.1875076 0l-5.109375 -7.734375l-1.359375 -2.09375l-6.53125 9.828125l-5.109375 0z" fill-rule="nonzero"></path><path fill="#cfe2f3" d="m225.0786 590.65405l115.9055 0l0 115.87402l-115.9055 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="m225.0786 590.65405l115.9055 0l0 115.87402l-115.9055 0z" fill-rule="nonzero"></path><path fill="#000000" d="m271.39072 665.6711l9.09375 -12.9375l-8.421875 -11.953125l5.28125 0l3.8125 5.828125q1.078125 1.671875 1.734375 2.796875q1.03125 -1.546875 1.90625 -2.75l4.1875 -5.875l5.0469055 0l-8.6094055 11.71875l9.2656555 13.171875l-5.1875 0l-5.1094055 -7.734375l-1.359375 -2.09375l-6.53125 9.828125l-5.109375 0z" fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" d="m411.0525 129.35564l506.5197 0l0 115.87402l-506.5197 0z" fill-rule="nonzero"></path><path fill="#000000" d="m424.27124 199.79564l0 -33.1875l5.0625 0l0 4.71875q3.65625 -5.46875 10.5625 -5.46875q3.0 0 5.515625 1.078125q2.515625 1.078125 3.765625 2.828125q1.25 1.75 1.75 4.15625q0.3125 1.5625 0.3125 5.46875l0 20.40625l-5.625 0l0 -20.1875q0 -3.4375 -0.65625 -5.140625q-0.65625 -1.703125 -2.328125 -2.71875q-1.671875 -1.015625 -3.921875 -1.015625q-3.59375 0 -6.203125 2.28125q-2.609375 2.28125 -2.609375 8.65625l0 18.125l-5.625 0zm33.5 -16.59375q0 -9.21875 5.125 -13.65625q4.28125 -3.6875 10.4375 -3.6875q6.84375 0 11.1875 4.484375q4.34375 4.484375 4.34375 12.390625q0 6.40625 -1.921875 10.078125q-1.921875 3.671875 -5.59375 5.703125q-3.671875 2.03125 -8.015625 2.03125q-6.96875 0 -11.265625 -4.46875q-4.296875 -4.46875 -4.296875 -12.875zm5.78125 0q0 6.375 2.78125 9.546875q2.78125 3.171875 7.0 3.171875q4.1875 0 6.96875 -3.1875q2.78125 -3.1875 2.78125 -9.71875q0 -6.15625 -2.796875 -9.328125q-2.796875 -3.171875 -6.953125 -3.171875q-4.21875 0 -7.0 3.15625q-2.78125 3.15625 -2.78125 9.53125zm61.96875 11.5625l0.8125 4.96875q-2.375 0.5 -4.25 0.5q-3.0625 0 -4.75 -0.96875q-1.6875 -0.96875 -2.375 -2.546875q-0.6875 -1.578125 -0.6875 -6.640625l0 -19.09375l-4.125 0l0 -4.375l4.125 0l0 -8.21875l5.59375 -3.375l0 11.59375l5.65625 0l0 4.375l-5.65625 0l0 19.40625q0 2.40625 0.296875 3.09375q0.296875 0.6875 0.96875 1.09375q0.671875 0.40625 1.921875 0.40625q0.9375 0 2.46875 -0.21875zm27.15625 -7.125l5.53125 0.71875q-0.90625 5.71875 -4.640625 8.953125q-3.734375 3.234375 -9.171875 3.234375q-6.8125 0 -10.953125 -4.453125q-4.140625 -4.453125 -4.140625 -12.765625q0 -5.375 1.78125 -9.40625q1.78125 -4.03125 5.421875 -6.046875q3.640625 -2.015625 7.921875 -2.015625q5.40625 0 8.84375 2.734375q3.4375 2.734375 4.40625 7.765625l-5.46875 0.84375q-0.78125 -3.34375 -2.765625 -5.03125q-1.984375 -1.6875 -4.796875 -1.6875q-4.25 0 -6.90625 3.046875q-2.65625 3.046875 -2.65625 9.640625q0 6.6875 2.5625 9.71875q2.5625 3.03125 6.6875 3.03125q3.3125 0 5.53125 -2.03125q2.21875 -2.03125 2.8125 -6.25zm32.09375 12.15625l0 -4.875q-3.875 5.625 -10.53125 5.625q-2.9375 0 -5.484375 -1.125q-2.546875 -1.125 -3.78125 -2.828125q-1.234375 -1.703125 -1.734375 -4.171875q-0.34375 -1.65625 -0.34375 -5.25l0 -20.5625l5.625 0l0 18.40625q0 4.40625 0.34375 5.9375q0.53125 2.21875 2.25 3.484375q1.71875 1.265625 4.25 1.265625q2.53125 0 4.75 -1.296875q2.21875 -1.296875 3.140625 -3.53125q0.921875 -2.234375 0.921875 -6.484375l0 -17.78125l5.625 0l0 33.1875l-5.03125 0zm11.65625 -13.75l0 -5.65625l17.28125 0l0 5.65625l-17.28125 0zm21.25 3.84375l5.5625 -0.875q0.46875 3.34375 2.609375 5.125q2.140625 1.78125 5.984375 1.78125q3.875 0 5.75 -1.578125q1.875 -1.578125 1.875 -3.703125q0 -1.90625 -1.65625 -3.0q-1.15625 -0.75 -5.75 -1.90625q-6.1875 -1.5625 -8.578125 -2.703125q-2.390625 -1.140625 -3.625 -3.15625q-1.234375 -2.015625 -1.234375 -4.453125q0 -2.21875 1.015625 -4.109375q1.015625 -1.890625 2.765625 -3.140625q1.3125 -0.96875 3.578125 -1.640625q2.265625 -0.671875 4.859375 -0.671875q3.90625 0 6.859375 1.125q2.953125 1.125 4.359375 3.046875q1.40625 1.921875 1.9375 5.140625l-5.5 0.75q-0.375 -2.5625 -2.171875 -4.0q-1.796875 -1.4375 -5.078125 -1.4375q-3.875 0 -5.53125 1.28125q-1.65625 1.28125 -1.65625 3.0q0 1.09375 0.6875 1.96875q0.6875 0.90625 2.15625 1.5q0.84375 0.3125 4.96875 1.4375q5.96875 1.59375 8.328125 2.609375q2.359375 1.015625 3.703125 2.953125q1.34375 1.9375 1.34375 4.8125q0 2.8125 -1.640625 5.296875q-1.640625 2.484375 -4.734375 3.84375q-3.09375 1.359375 -7.0 1.359375q-6.46875 0 -9.859375 -2.6875q-3.390625 -2.6875 -4.328125 -7.96875zm56.0 9.90625l0 -4.875q-3.875 5.625 -10.53125 5.625q-2.9375 0 -5.484375 -1.125q-2.546875 -1.125 -3.78125 -2.828125q-1.234375 -1.703125 -1.734375 -4.171875q-0.34375 -1.65625 -0.34375 -5.25l0 -20.5625l5.625 0l0 18.40625q0 4.40625 0.34375 5.9375q0.53125 2.21875 2.25 3.484375q1.71875 1.265625 4.25 1.265625q2.53125 0 4.75 -1.296875q2.21875 -1.296875 3.140625 -3.53125q0.921875 -2.234375 0.921875 -6.484375l0 -17.78125l5.625 0l0 33.1875l-5.03125 0zm13.84375 12.71875l0 -45.90625l5.125 0l0 4.3125q1.8125 -2.53125 4.09375 -3.796875q2.28125 -1.265625 5.53125 -1.265625q4.25 0 7.5 2.1875q3.25 2.1875 4.90625 6.171875q1.65625 3.984375 1.65625 8.734375q0 5.09375 -1.828125 9.171875q-1.828125 4.078125 -5.3125 6.25q-3.484375 2.171875 -7.328125 2.171875q-2.8125 0 -5.046875 -1.1875q-2.234375 -1.1875 -3.671875 -3.0l0 16.15625l-5.625 0zm5.09375 -29.125q0 6.40625 2.59375 9.46875q2.59375 3.0625 6.28125 3.0625q3.75 0 6.421875 -3.171875q2.671875 -3.171875 2.671875 -9.828125q0 -6.34375 -2.609375 -9.5q-2.609375 -3.15625 -6.234375 -3.15625q-3.59375 0 -6.359375 3.359375q-2.765625 3.359375 -2.765625 9.765625zm30.5 29.125l0 -45.90625l5.125 0l0 4.3125q1.8125 -2.53125 4.09375 -3.796875q2.28125 -1.265625 5.53125 -1.265625q4.25 0 7.5 2.1875q3.25 2.1875 4.90625 6.171875q1.65625 3.984375 1.65625 8.734375q0 5.09375 -1.828125 9.171875q-1.828125 4.078125 -5.3125 6.25q-3.484375 2.171875 -7.328125 2.171875q-2.8125 0 -5.046875 -1.1875q-2.234375 -1.1875 -3.671875 -3.0l0 16.15625l-5.625 0zm5.09375 -29.125q0 6.40625 2.59375 9.46875q2.59375 3.0625 6.28125 3.0625q3.75 0 6.421875 -3.171875q2.671875 -3.171875 2.671875 -9.828125q0 -6.34375 -2.609375 -9.5q-2.609375 -3.15625 -6.234375 -3.15625q-3.59375 0 -6.359375 3.359375q-2.765625 3.359375 -2.765625 9.765625zm28.40625 -0.1875q0 -9.21875 5.125 -13.65625q4.28125 -3.6875 10.4375 -3.6875q6.84375 0 11.1875 4.484375q4.34375 4.484375 4.34375 12.390625q0 6.40625 -1.921875 10.078125q-1.921875 3.671875 -5.59375 5.703125q-3.671875 2.03125 -8.015625 2.03125q-6.96875 0 -11.265625 -4.46875q-4.296875 -4.46875 -4.296875 -12.875zm5.78125 0q0 6.375 2.78125 9.546875q2.78125 3.171875 7.0 3.171875q4.1875 0 6.96875 -3.1875q2.78125 -3.1875 2.78125 -9.71875q0 -6.15625 -2.796875 -9.328125q-2.796875 -3.171875 -6.953125 -3.171875q-4.21875 0 -7.0 3.15625q-2.78125 3.15625 -2.78125 9.53125zm31.84375 16.59375l0 -33.1875l5.0625 0l0 5.03125q1.9375 -3.53125 3.578125 -4.65625q1.640625 -1.125 3.609375 -1.125q2.84375 0 5.78125 1.8125l-1.9375 5.21875q-2.0625 -1.21875 -4.125 -1.21875q-1.84375 0 -3.3125 1.109375q-1.46875 1.109375 -2.09375 3.078125q-0.9375 3.0 -0.9375 6.5625l0 17.375l-5.625 0zm33.65625 -5.03125l0.8125 4.96875q-2.375 0.5 -4.25 0.5q-3.0625 0 -4.75 -0.96875q-1.6875 -0.96875 -2.375 -2.546875q-0.6875 -1.578125 -0.6875 -6.640625l0 -19.09375l-4.125 0l0 -4.375l4.125 0l0 -8.21875l5.59375 -3.375l0 11.59375l5.65625 0l0 4.375l-5.65625 0l0 19.40625q0 2.40625 0.296875 3.09375q0.296875 0.6875 0.96875 1.09375q0.671875 0.40625 1.921875 0.40625q0.9375 0 2.46875 -0.21875z" fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" d="m411.0525 417.9475l506.5197 0l0 115.87402l-506.5197 0z" fill-rule="nonzero"></path><path fill="#000000" d="m430.39624 488.3875l-10.15625 -33.1875l5.8125 0l5.28125 19.15625l1.96875 7.125q0.125 -0.53125 1.71875 -6.84375l5.28125 -19.4375l5.78125 0l4.96875 19.25l1.65625 6.34375l1.90625 -6.40625l5.6875 -19.1875l5.46875 0l-10.375 33.1875l-5.84375 0l-5.28125 -19.875l-1.28125 -5.65625l-6.71875 25.53125l-5.875 0zm40.125 -39.34375l0 -6.46875l5.625 0l0 6.46875l-5.625 0zm0 39.34375l0 -33.1875l5.625 0l0 33.1875l-5.625 0zm26.46875 -5.03125l0.8125 4.96875q-2.375 0.5 -4.25 0.5q-3.0625 0 -4.75 -0.96875q-1.6875 -0.96875 -2.375 -2.546875q-0.6875 -1.578125 -0.6875 -6.640625l0 -19.09375l-4.125 0l0 -4.375l4.125 0l0 -8.21875l5.59375 -3.375l0 11.59375l5.65625 0l0 4.375l-5.65625 0l0 19.40625q0 2.40625 0.296875 3.09375q0.296875 0.6875 0.96875 1.09375q0.671875 0.40625 1.921875 0.40625q0.9375 0 2.46875 -0.21875zm5.5 5.03125l0 -45.8125l5.625 0l0 16.4375q3.9375 -4.5625 9.9375 -4.5625q3.6875 0 6.40625 1.453125q2.71875 1.453125 3.890625 4.015625q1.171875 2.5625 1.171875 7.4375l0 21.03125l-5.625 0l0 -21.03125q0 -4.21875 -1.828125 -6.140625q-1.828125 -1.921875 -5.171875 -1.921875q-2.5 0 -4.703125 1.296875q-2.203125 1.296875 -3.140625 3.515625q-0.9375 2.21875 -0.9375 6.125l0 18.15625l-5.625 0zm65.65625 -5.03125l0.8125 4.96875q-2.375 0.5 -4.25 0.5q-3.0625 0 -4.75 -0.96875q-1.6875 -0.96875 -2.375 -2.546875q-0.6875 -1.578125 -0.6875 -6.640625l0 -19.09375l-4.125 0l0 -4.375l4.125 0l0 -8.21875l5.59375 -3.375l0 11.59375l5.65625 0l0 4.375l-5.65625 0l0 19.40625q0 2.40625 0.296875 3.09375q0.296875 0.6875 0.96875 1.09375q0.671875 0.40625 1.921875 0.40625q0.9375 0 2.46875 -0.21875zm27.15625 -7.125l5.53125 0.71875q-0.90625 5.71875 -4.640625 8.953125q-3.734375 3.234375 -9.171875 3.234375q-6.8125 0 -10.953125 -4.453125q-4.140625 -4.453125 -4.140625 -12.765625q0 -5.375 1.78125 -9.40625q1.78125 -4.03125 5.421875 -6.046875q3.640625 -2.015625 7.921875 -2.015625q5.40625 0 8.84375 2.734375q3.4375 2.734375 4.40625 7.765625l-5.46875 0.84375q-0.78125 -3.34375 -2.765625 -5.03125q-1.984375 -1.6875 -4.796875 -1.6875q-4.25 0 -6.90625 3.046875q-2.65625 3.046875 -2.65625 9.640625q0 6.6875 2.5625 9.71875q2.5625 3.03125 6.6875 3.03125q3.3125 0 5.53125 -2.03125q2.21875 -2.03125 2.8125 -6.25zm32.09375 12.15625l0 -4.875q-3.875 5.625 -10.53125 5.625q-2.9375 0 -5.484375 -1.125q-2.546875 -1.125 -3.78125 -2.828125q-1.234375 -1.703125 -1.734375 -4.171875q-0.34375 -1.65625 -0.34375 -5.25l0 -20.5625l5.625 0l0 18.40625q0 4.40625 0.34375 5.9375q0.53125 2.21875 2.25 3.484375q1.71875 1.265625 4.25 1.265625q2.53125 0 4.75 -1.296875q2.21875 -1.296875 3.140625 -3.53125q0.921875 -2.234375 0.921875 -6.484375l0 -17.78125l5.625 0l0 33.1875l-5.03125 0zm11.65625 -13.75l0 -5.65625l17.28125 0l0 5.65625l-17.28125 0zm21.25 3.84375l5.5625 -0.875q0.46875 3.34375 2.609375 5.125q2.140625 1.78125 5.984375 1.78125q3.875 0 5.75 -1.578125q1.875 -1.578125 1.875 -3.703125q0 -1.90625 -1.65625 -3.0q-1.15625 -0.75 -5.75 -1.90625q-6.1875 -1.5625 -8.578125 -2.703125q-2.390625 -1.140625 -3.625 -3.15625q-1.234375 -2.015625 -1.234375 -4.453125q0 -2.21875 1.015625 -4.109375q1.015625 -1.890625 2.765625 -3.140625q1.3125 -0.96875 3.578125 -1.640625q2.265625 -0.671875 4.859375 -0.671875q3.90625 0 6.859375 1.125q2.953125 1.125 4.359375 3.046875q1.40625 1.921875 1.9375 5.140625l-5.5 0.75q-0.375 -2.5625 -2.171875 -4.0q-1.796875 -1.4375 -5.078125 -1.4375q-3.875 0 -5.53125 1.28125q-1.65625 1.28125 -1.65625 3.0q0 1.09375 0.6875 1.96875q0.6875 0.90625 2.15625 1.5q0.84375 0.3125 4.96875 1.4375q5.96875 1.59375 8.328125 2.609375q2.359375 1.015625 3.703125 2.953125q1.34375 1.9375 1.34375 4.8125q0 2.8125 -1.640625 5.296875q-1.640625 2.484375 -4.734375 3.84375q-3.09375 1.359375 -7.0 1.359375q-6.46875 0 -9.859375 -2.6875q-3.390625 -2.6875 -4.328125 -7.96875zm56.0 9.90625l0 -4.875q-3.875 5.625 -10.53125 5.625q-2.9375 0 -5.484375 -1.125q-2.546875 -1.125 -3.78125 -2.828125q-1.234375 -1.703125 -1.734375 -4.171875q-0.34375 -1.65625 -0.34375 -5.25l0 -20.5625l5.625 0l0 18.40625q0 4.40625 0.34375 5.9375q0.53125 2.21875 2.25 3.484375q1.71875 1.265625 4.25 1.265625q2.53125 0 4.75 -1.296875q2.21875 -1.296875 3.140625 -3.53125q0.921875 -2.234375 0.921875 -6.484375l0 -17.78125l5.625 0l0 33.1875l-5.03125 0zm13.84375 12.71875l0 -45.90625l5.125 0l0 4.3125q1.8125 -2.53125 4.09375 -3.796875q2.28125 -1.265625 5.53125 -1.265625q4.25 0 7.5 2.1875q3.25 2.1875 4.90625 6.171875q1.65625 3.984375 1.65625 8.734375q0 5.09375 -1.828125 9.171875q-1.828125 4.078125 -5.3125 6.25q-3.484375 2.171875 -7.328125 2.171875q-2.8125 0 -5.046875 -1.1875q-2.234375 -1.1875 -3.671875 -3.0l0 16.15625l-5.625 0zm5.09375 -29.125q0 6.40625 2.59375 9.46875q2.59375 3.0625 6.28125 3.0625q3.75 0 6.421875 -3.171875q2.671875 -3.171875 2.671875 -9.828125q0 -6.34375 -2.609375 -9.5q-2.609375 -3.15625 -6.234375 -3.15625q-3.59375 0 -6.359375 3.359375q-2.765625 3.359375 -2.765625 9.765625zm30.5 29.125l0 -45.90625l5.125 0l0 4.3125q1.8125 -2.53125 4.09375 -3.796875q2.28125 -1.265625 5.53125 -1.265625q4.25 0 7.5 2.1875q3.25 2.1875 4.90625 6.171875q1.65625 3.984375 1.65625 8.734375q0 5.09375 -1.828125 9.171875q-1.828125 4.078125 -5.3125 6.25q-3.484375 2.171875 -7.328125 2.171875q-2.8125 0 -5.046875 -1.1875q-2.234375 -1.1875 -3.671875 -3.0l0 16.15625l-5.625 0zm5.09375 -29.125q0 6.40625 2.59375 9.46875q2.59375 3.0625 6.28125 3.0625q3.75 0 6.421875 -3.171875q2.671875 -3.171875 2.671875 -9.828125q0 -6.34375 -2.609375 -9.5q-2.609375 -3.15625 -6.234375 -3.15625q-3.59375 0 -6.359375 3.359375q-2.765625 3.359375 -2.765625 9.765625zm28.40625 -0.1875q0 -9.21875 5.125 -13.65625q4.28125 -3.6875 10.4375 -3.6875q6.84375 0 11.1875 4.484375q4.34375 4.484375 4.34375 12.390625q0 6.40625 -1.921875 10.078125q-1.921875 3.671875 -5.59375 5.703125q-3.671875 2.03125 -8.015625 2.03125q-6.96875 0 -11.265625 -4.46875q-4.296875 -4.46875 -4.296875 -12.875zm5.78125 0q0 6.375 2.78125 9.546875q2.78125 3.171875 7.0 3.171875q4.1875 0 6.96875 -3.1875q2.78125 -3.1875 2.78125 -9.71875q0 -6.15625 -2.796875 -9.328125q-2.796875 -3.171875 -6.953125 -3.171875q-4.21875 0 -7.0 3.15625q-2.78125 3.15625 -2.78125 9.53125zm31.84375 16.59375l0 -33.1875l5.0625 0l0 5.03125q1.9375 -3.53125 3.578125 -4.65625q1.640625 -1.125 3.609375 -1.125q2.84375 0 5.78125 1.8125l-1.9375 5.21875q-2.0625 -1.21875 -4.125 -1.21875q-1.84375 0 -3.3125 1.109375q-1.46875 1.109375 -2.09375 3.078125q-0.9375 3.0 -0.9375 6.5625l0 17.375l-5.625 0zm33.65625 -5.03125l0.8125 4.96875q-2.375 0.5 -4.25 0.5q-3.0625 0 -4.75 -0.96875q-1.6875 -0.96875 -2.375 -2.546875q-0.6875 -1.578125 -0.6875 -6.640625l0 -19.09375l-4.125 0l0 -4.375l4.125 0l0 -8.21875l5.59375 -3.375l0 11.59375l5.65625 0l0 4.375l-5.65625 0l0 19.40625q0 2.40625 0.296875 3.09375q0.296875 0.6875 0.96875 1.09375q0.671875 0.40625 1.921875 0.40625q0.9375 0 2.46875 -0.21875z" fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" d="m411.0525 590.65356l506.5197 0l0 115.87402l-506.5197 0z" fill-rule="nonzero"></path><path fill="#000000" d="m424.20874 661.09357l0 -33.1875l5.0625 0l0 5.03125q1.9375 -3.53125 3.578125 -4.65625q1.640625 -1.125 3.609375 -1.125q2.84375 0 5.78125 1.8125l-1.9375 5.21875q-2.0625 -1.21875 -4.125 -1.21875q-1.84375 0 -3.3125 1.109375q-1.46875 1.109375 -2.09375 3.078125q-0.9375 3.0 -0.9375 6.5625l0 17.375l-5.625 0zm44.09375 -10.6875l5.8125 0.71875q-1.375 5.09375 -5.09375 7.90625q-3.71875 2.8125 -9.5 2.8125q-7.28125 0 -11.546875 -4.484375q-4.265625 -4.484375 -4.265625 -12.578125q0 -8.375 4.3125 -13.0q4.3125 -4.625 11.1875 -4.625q6.65625 0 10.875 4.53125q4.21875 4.53125 4.21875 12.75q0 0.5 -0.03125 1.5l-24.75 0q0.3125 5.46875 3.09375 8.375q2.78125 2.90625 6.9375 2.90625q3.09375 0 5.28125 -1.625q2.1875 -1.625 3.46875 -5.1875zm-18.46875 -9.09375l18.53125 0q-0.375 -4.1875 -2.125 -6.28125q-2.6875 -3.25 -6.96875 -3.25q-3.875 0 -6.515625 2.59375q-2.640625 2.59375 -2.921875 6.9375zm32.6875 19.78125l0 -28.8125l-4.96875 0l0 -4.375l4.96875 0l0 -3.53125q0 -3.34375 0.59375 -4.96875q0.8125 -2.1875 2.859375 -3.546875q2.046875 -1.359375 5.734375 -1.359375q2.375 0 5.25 0.5625l-0.84375 4.90625q-1.75 -0.3125 -3.3125 -0.3125q-2.5625 0 -3.625 1.09375q-1.0625 1.09375 -1.0625 4.09375l0 3.0625l6.46875 0l0 4.375l-6.46875 0l0 28.8125l-5.59375 0zm39.15625 -10.6875l5.8125 0.71875q-1.375 5.09375 -5.09375 7.90625q-3.71875 2.8125 -9.5 2.8125q-7.28125 0 -11.546875 -4.484375q-4.265625 -4.484375 -4.265625 -12.578125q0 -8.375 4.3125 -13.0q4.3125 -4.625 11.1875 -4.625q6.65625 0 10.875 4.53125q4.21875 4.53125 4.21875 12.75q0 0.5 -0.03125 1.5l-24.75 0q0.3125 5.46875 3.09375 8.375q2.78125 2.90625 6.9375 2.90625q3.09375 0 5.28125 -1.625q2.1875 -1.625 3.46875 -5.1875zm-18.46875 -9.09375l18.53125 0q-0.375 -4.1875 -2.125 -6.28125q-2.6875 -3.25 -6.96875 -3.25q-3.875 0 -6.515625 2.59375q-2.640625 2.59375 -2.921875 6.9375zm31.28125 19.78125l0 -33.1875l5.0625 0l0 5.03125q1.9375 -3.53125 3.578125 -4.65625q1.640625 -1.125 3.609375 -1.125q2.84375 0 5.78125 1.8125l-1.9375 5.21875q-2.0625 -1.21875 -4.125 -1.21875q-1.84375 0 -3.3125 1.109375q-1.46875 1.109375 -2.09375 3.078125q-0.9375 3.0 -0.9375 6.5625l0 17.375l-5.625 0zm44.09375 -10.6875l5.8125 0.71875q-1.375 5.09375 -5.09375 7.90625q-3.71875 2.8125 -9.5 2.8125q-7.28125 0 -11.546875 -4.484375q-4.265625 -4.484375 -4.265625 -12.578125q0 -8.375 4.3125 -13.0q4.3125 -4.625 11.1875 -4.625q6.65625 0 10.875 4.53125q4.21875 4.53125 4.21875 12.75q0 0.5 -0.03125 1.5l-24.75 0q0.3125 5.46875 3.09375 8.375q2.78125 2.90625 6.9375 2.90625q3.09375 0 5.28125 -1.625q2.1875 -1.625 3.46875 -5.1875zm-18.46875 -9.09375l18.53125 0q-0.375 -4.1875 -2.125 -6.28125q-2.6875 -3.25 -6.96875 -3.25q-3.875 0 -6.515625 2.59375q-2.640625 2.59375 -2.921875 6.9375zm31.34375 19.78125l0 -33.1875l5.0625 0l0 4.71875q3.65625 -5.46875 10.5625 -5.46875q3.0 0 5.515625 1.078125q2.515625 1.078125 3.765625 2.828125q1.25 1.75 1.75 4.15625q0.3125 1.5625 0.3125 5.46875l0 20.40625l-5.625 0l0 -20.1875q0 -3.4375 -0.65625 -5.140625q-0.65625 -1.703125 -2.328125 -2.71875q-1.671875 -1.015625 -3.921875 -1.015625q-3.59375 0 -6.203125 2.28125q-2.609375 2.28125 -2.609375 8.65625l0 18.125l-5.625 0zm57.25 -12.15625l5.53125 0.71875q-0.90625 5.71875 -4.640625 8.953125q-3.734375 3.234375 -9.171875 3.234375q-6.8125 0 -10.953125 -4.453125q-4.140625 -4.453125 -4.140625 -12.765625q0 -5.375 1.78125 -9.40625q1.78125 -4.03125 5.421875 -6.046875q3.640625 -2.015625 7.921875 -2.015625q5.40625 0 8.84375 2.734375q3.4375 2.734375 4.40625 7.765625l-5.46875 0.84375q-0.78125 -3.34375 -2.765625 -5.03125q-1.984375 -1.6875 -4.796875 -1.6875q-4.25 0 -6.90625 3.046875q-2.65625 3.046875 -2.65625 9.640625q0 6.6875 2.5625 9.71875q2.5625 3.03125 6.6875 3.03125q3.3125 0 5.53125 -2.03125q2.21875 -2.03125 2.8125 -6.25zm33.0625 1.46875l5.8125 0.71875q-1.375 5.09375 -5.09375 7.90625q-3.71875 2.8125 -9.5 2.8125q-7.28125 0 -11.546875 -4.484375q-4.265625 -4.484375 -4.265625 -12.578125q0 -8.375 4.3125 -13.0q4.3125 -4.625 11.1875 -4.625q6.65625 0 10.875 4.53125q4.21875 4.53125 4.21875 12.75q0 0.5 -0.03125 1.5l-24.75 0q0.3125 5.46875 3.09375 8.375q2.78125 2.90625 6.9375 2.90625q3.09375 0 5.28125 -1.625q2.1875 -1.625 3.46875 -5.1875zm-18.46875 -9.09375l18.53125 0q-0.375 -4.1875 -2.125 -6.28125q-2.6875 -3.25 -6.96875 -3.25q-3.875 0 -6.515625 2.59375q-2.640625 2.59375 -2.921875 6.9375z" fill-rule="nonzero"></path></g></svg> + diff --git a/testing/web-platform/tests/css/css-writing-modes/test-plan/img/figure-tcufont.svg b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/figure-tcufont.svg new file mode 100644 index 0000000000..f0b3aa2df5 --- /dev/null +++ b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/figure-tcufont.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" standalone="yes"?> + +<svg version="1.1" viewBox="0.0 0.0 720.0 540.0" fill="none" stroke="none" stroke-linecap="square" stroke-miterlimit="10" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><clipPath id="p.0"><path d="m0 0l720.0 0l0 540.0l-720.0 0l0 -540.0z" clip-rule="nonzero"></path></clipPath><g clip-path="url(#p.0)"><path fill="#000000" fill-opacity="0.0" d="m0 0l720.0 0l0 540.0l-720.0 0z" fill-rule="nonzero"></path><path fill="#cfe2f3" d="m43.997375 105.64454l98.39371 0l0 98.393715l-98.39371 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="m43.997375 105.64454l98.39371 0l0 98.393715l-98.39371 0z" fill-rule="nonzero"></path><path fill="#000000" d="m77.66298 177.78139l12.125 -17.25l-11.21875 -15.9375l7.03125 0l5.09375 7.78125q1.4375 2.21875 2.3125 3.71875q1.375 -2.0625 2.53125 -3.65625l5.59375 -7.84375l6.71875 0l-11.46875 15.625l12.34375 17.5625l-6.90625 0l-6.8125 -10.3125l-1.8125 -2.78125l-8.71875 13.09375l-6.8125 0z" fill-rule="nonzero"></path><path fill="#cfe2f3" d="m199.21577 105.64279l98.38435 0l0 98.38435l-98.38435 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="m199.21577 105.64279l98.38435 0l0 98.38435l-98.38435 0z" fill-rule="nonzero"></path><path fill="#000000" d="m254.45482 177.77496l-5.625 0l0 -35.84375q-2.03125 1.9375 -5.328125 3.875q-3.296875 1.9375 -5.921875 2.90625l0 -5.4375q4.71875 -2.21875 8.25 -5.375q3.53125 -3.15625 5.0 -6.125l3.625 0l0 46.0z" fill-rule="nonzero"></path><path fill="#cfe2f3" d="m199.21577 204.02715l98.38435 0l0 98.38435l-98.38435 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="m199.21577 204.02715l98.38435 0l0 98.38435l-98.38435 0z" fill-rule="nonzero"></path><path fill="#000000" d="m262.82983 270.75305l0 5.40625l-30.281265 0q-0.0625 -2.03125 0.65625 -3.90625q1.15625 -3.09375 3.703125 -6.09375q2.546875 -3.0 7.359375 -6.9375q7.46875 -6.1249847 10.09375 -9.70311q2.6250153 -3.578125 2.6250153 -6.765625q0 -3.34375 -2.3906403 -5.640625q-2.390625 -2.296875 -6.234375 -2.296875q-4.0625 0 -6.5 2.4375q-2.4375 2.4375 -2.46875 6.75l-5.78125 -0.59375q0.59375 -6.46875 4.46875 -9.859375q3.875 -3.390625 10.40625 -3.390625q6.59375 0 10.437515 3.65625q3.84375 3.65625 3.84375 9.0625q0 2.75 -1.125 5.40625q-1.125 2.65625 -3.734375 5.59375q-2.6093903 2.9374847 -8.67189 8.062485q-5.0625 4.25 -6.5 5.765625q-1.4375 1.515625 -2.375 3.046875l22.468765 0z" fill-rule="nonzero"></path><path fill="#cfe2f3" d="m199.21577 302.4115l98.38435 0l0 98.38434l-98.38435 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="m199.21577 302.4115l98.38435 0l0 98.38434l-98.38435 0z" fill-rule="nonzero"></path><path fill="#000000" d="m233.29857 362.44992l5.625 -0.75q0.96875 4.78125 3.296875 6.890625q2.328125 2.109375 5.671875 2.109375q3.96875 0 6.703125 -2.75q2.7343903 -2.75 2.7343903 -6.8125q0 -3.875 -2.5312653 -6.390625q-2.53125 -2.515625 -6.4375 -2.515625q-1.59375 0 -3.96875 0.625l0.625 -4.9375q0.5625 0.0625 0.90625 0.0625q3.59375 0 6.46875 -1.875q2.875 -1.875 2.875 -5.78125q0 -3.09375 -2.09375 -5.125q-2.09375 -2.03125 -5.40625 -2.03125q-3.28125 0 -5.46875 2.0625q-2.1875 2.0625 -2.8125 6.1875l-5.625 -1.0q1.03125 -5.65625 4.6875 -8.765625q3.65625 -3.109375 9.09375 -3.109375q3.75 0 6.90625 1.609375q3.1562653 1.609375 4.8281403 4.390625q1.671875 2.78125 1.671875 5.90625q0 2.96875 -1.59375 5.40625q-1.59375 2.4375 -4.7187653 3.875q4.0625153 0.9375 6.3125153 3.890625q2.2499695 2.953125 2.2499695 7.390625q0 6.0 -4.3749695 10.171875q-4.3750153 4.171875 -11.062515 4.171875q-6.03125 0 -10.015625 -3.59375q-3.984375 -3.59375 -4.546875 -9.3125z" fill-rule="nonzero"></path><path fill="#cfe2f3" d="m577.6097 105.64454l98.39374 0l0 98.393715l-98.39374 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="m577.6097 105.64454l98.39374 0l0 98.393715l-98.39374 0z" fill-rule="nonzero"></path><path fill="#000000" d="m611.2753 177.78139l12.125 -17.25l-11.21875 -15.9375l7.03125 0l5.09375 7.78125q1.4375 2.21875 2.3125 3.71875q1.375 -2.0625 2.53125 -3.65625l5.59375 -7.84375l6.71875 0l-11.46875 15.625l12.34375 17.5625l-6.90625 0l-6.8125 -10.3125l-1.8125 -2.78125l-8.71875 13.09375l-6.8125 0z" fill-rule="nonzero"></path><path fill="#cfe2f3" d="m419.72928 105.64454l98.39371 0l0 98.393715l-98.39371 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="m419.72928 105.64454l98.39371 0l0 98.393715l-98.39371 0z" fill-rule="nonzero"></path><path fill="#000000" d="m453.3949 177.78139l12.125 -17.25l-11.21875 -15.9375l7.03125 0l5.09375 7.78125q1.4375 2.21875 2.3125 3.71875q1.375 -2.0625 2.53125 -3.65625l5.59375 -7.84375l6.71875 0l-11.46875 15.625l12.34375 17.5625l-6.90625 0l-6.8125 -10.3125l-1.8125 -2.78125l-8.71875 13.09375l-6.8125 0z" fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" d="m57.50656 20.08399l240.09448 0l0 79.55906l-240.09448 0z" fill-rule="nonzero"></path><path fill="#000000" d="m93.881935 71.38274l0.609375 3.734375q-1.78125 0.375 -3.1875 0.375q-2.296875 0 -3.5625 -0.71875q-1.265625 -0.734375 -1.78125 -1.921875q-0.515625 -1.1875 -0.515625 -4.984375l0 -14.3125l-3.09375 0l0 -3.28125l3.09375 0l0 -6.171875l4.203125 -2.53125l0 8.703125l4.234375 0l0 3.28125l-4.234375 0l0 14.546875q0 1.8125 0.21875 2.328125q0.21875 0.515625 0.71875 0.828125q0.515625 0.296875 1.453125 0.296875q0.703125 0 1.84375 -0.171875zm21.164062 -4.234375l4.359375 0.53125q-1.03125 3.828125 -3.828125 5.9375q-2.78125 2.109375 -7.109375 2.109375q-5.46875 0 -8.671875 -3.359375q-3.1875 -3.375 -3.1875 -9.4375q0 -6.28125 3.234375 -9.75q3.234375 -3.46875 8.390625 -3.46875q4.984375 0 8.140625 3.40625q3.171875 3.390625 3.171875 9.546875q0 0.375 -0.015625 1.125l-18.5625 0q0.234375 4.109375 2.3125 6.296875q2.09375 2.171875 5.203125 2.171875q2.328125 0 3.96875 -1.21875q1.640625 -1.21875 2.59375 -3.890625zm-13.84375 -6.828125l13.890625 0q-0.28125 -3.140625 -1.59375 -4.703125q-2.015625 -2.4375 -5.21875 -2.4375q-2.90625 0 -4.890625 1.953125q-1.984375 1.9375 -2.1875 5.1875zm21.820312 7.40625l4.171875 -0.65625q0.34375 2.515625 1.9531326 3.859375q1.609375 1.328125 4.484375 1.328125q2.90625 0 4.3125 -1.1875q1.40625 -1.1875 1.40625 -2.78125q0 -1.421875 -1.234375 -2.25q-0.875 -0.5625 -4.3125 -1.421875q-4.640625 -1.171875 -6.4375076 -2.03125q-1.796875 -0.859375 -2.71875 -2.359375q-0.921875 -1.515625 -0.921875 -3.34375q0 -1.671875 0.75 -3.078125q0.765625 -1.421875 2.078125 -2.359375q0.984375 -0.734375 2.6875076 -1.234375q1.703125 -0.5 3.640625 -0.5q2.9375 0 5.140625 0.84375q2.21875 0.84375 3.265625 2.28125q1.0625 1.4375 1.46875 3.859375l-4.125 0.5625q-0.28125 -1.921875 -1.640625 -3.0q-1.34375 -1.078125 -3.796875 -1.078125q-2.90625 0 -4.15625 0.96875q-1.2343826 0.953125 -1.2343826 2.234375q0 0.828125 0.5156326 1.484375q0.515625 0.671875 1.609375 1.125q0.640625 0.234375 3.734375 1.078125q4.46875 1.1875 6.234375 1.953125q1.78125 0.765625 2.78125 2.21875q1.015625 1.453125 1.015625 3.609375q0 2.109375 -1.234375 3.96875q-1.234375 1.859375 -3.5625 2.890625q-2.3125 1.015625 -5.234375 1.015625q-4.859375 0 -7.4062576 -2.015625q-2.53125 -2.015625 -3.234375 -5.984375zm34.890633 3.65625l0.609375 3.734375q-1.78125 0.375 -3.1875 0.375q-2.296875 0 -3.5625 -0.71875q-1.265625 -0.734375 -1.78125 -1.921875q-0.515625 -1.1875 -0.515625 -4.984375l0 -14.3125l-3.09375 0l0 -3.28125l3.09375 0l0 -6.171875l4.203125 -2.53125l0 8.703125l4.234375 0l0 3.28125l-4.234375 0l0 14.546875q0 1.8125 0.21875 2.328125q0.21875 0.515625 0.71875 0.828125q0.515625 0.296875 1.453125 0.296875q0.703125 0 1.84375 -0.171875zm33.70311 -5.34375l4.15625 0.546875q-0.6875 4.28125 -3.484375 6.71875q-2.796875 2.421875 -6.8749847 2.421875q-5.109375 0 -8.21875 -3.34375q-3.109375 -3.34375 -3.109375 -9.578125q0 -4.03125 1.328125 -7.046875q1.34375 -3.03125 4.078125 -4.53125q2.734375 -1.515625 5.9375 -1.515625q4.0624847 0 6.6406097 2.046875q2.578125 2.046875 3.296875 5.828125l-4.09375 0.625q-0.59375 -2.5 -2.078125 -3.765625q-1.484375 -1.265625 -3.59375 -1.265625q-3.1874847 0 -5.1874847 2.28125q-1.984375 2.28125 -1.984375 7.234375q0 5.015625 1.921875 7.296875q1.921875 2.265625 5.015625 2.265625q2.4843597 0 4.1406097 -1.515625q1.671875 -1.53125 2.109375 -4.703125zm24.0 6.046875q-2.34375 2.0 -4.515625 2.828125q-2.15625 0.8125 -4.640625 0.8125q-4.109375 0 -6.3125 -2.0q-2.203125 -2.015625 -2.203125 -5.125q0 -1.828125 0.828125 -3.34375q0.84375 -1.515625 2.1875 -2.421875q1.34375 -0.921875 3.03125 -1.390625q1.25 -0.328125 3.75 -0.625q5.109375 -0.609375 7.53125 -1.453125q0.015625 -0.875 0.015625 -1.109375q0 -2.578125 -1.1875 -3.625q-1.625 -1.4375 -4.8125 -1.4375q-2.96875 0 -4.390625 1.046875q-1.421875 1.046875 -2.09375 3.6875l-4.125 -0.5625q0.5625 -2.640625 1.84375 -4.265625q1.296875 -1.640625 3.734375 -2.515625q2.4375 -0.875 5.640625 -0.875q3.1875 0 5.171875 0.75q2.0 0.75 2.9375 1.890625q0.9375 1.125 1.3125 2.859375q0.21875 1.078125 0.21875 3.890625l0 5.625q0 5.890625 0.265625 7.453125q0.265625 1.546875 1.0625 2.984375l-4.40625 0q-0.65625 -1.3125 -0.84375 -3.078125zm-0.34375 -9.421875q-2.296875 0.9375 -6.890625 1.59375q-2.609375 0.375 -3.6875 0.84375q-1.078125 0.46875 -1.671875 1.375q-0.578125 0.90625 -0.578125 2.0q0 1.6875 1.28125 2.8125q1.28125 1.125 3.734375 1.125q2.4375 0 4.328125 -1.0625q1.90625 -1.0625 2.796875 -2.921875q0.6875 -1.421875 0.6875 -4.21875l0 -1.546875zm9.1171875 5.0625l4.171875 -0.65625q0.34375 2.515625 1.953125 3.859375q1.609375 1.328125 4.484375 1.328125q2.90625 0 4.3125 -1.1875q1.40625 -1.1875 1.40625 -2.78125q0 -1.421875 -1.234375 -2.25q-0.875 -0.5625 -4.3125 -1.421875q-4.640625 -1.171875 -6.4375 -2.03125q-1.796875 -0.859375 -2.71875 -2.359375q-0.921875 -1.515625 -0.921875 -3.34375q0 -1.671875 0.75 -3.078125q0.765625 -1.421875 2.078125 -2.359375q0.984375 -0.734375 2.6875 -1.234375q1.703125 -0.5 3.640625 -0.5q2.9375 0 5.140625 0.84375q2.21875 0.84375 3.265625 2.28125q1.0625 1.4375 1.46875 3.859375l-4.125 0.5625q-0.28125 -1.921875 -1.640625 -3.0q-1.34375 -1.078125 -3.796875 -1.078125q-2.90625 0 -4.15625 0.96875q-1.234375 0.953125 -1.234375 2.234375q0 0.828125 0.515625 1.484375q0.515625 0.671875 1.609375 1.125q0.640625 0.234375 3.734375 1.078125q4.46875 1.1875 6.234375 1.953125q1.78125 0.765625 2.78125 2.21875q1.015625 1.453125 1.015625 3.609375q0 2.109375 -1.234375 3.96875q-1.234375 1.859375 -3.5625 2.890625q-2.3125 1.015625 -5.234375 1.015625q-4.859375 0 -7.40625 -2.015625q-2.53125 -2.015625 -3.234375 -5.984375zm42.71875 -0.578125l4.359375 0.53125q-1.03125 3.828125 -3.828125 5.9375q-2.78125 2.109375 -7.109375 2.109375q-5.46875 0 -8.671875 -3.359375q-3.1875 -3.375 -3.1875 -9.4375q0 -6.28125 3.234375 -9.75q3.234375 -3.46875 8.390625 -3.46875q4.984375 0 8.140625 3.40625q3.171875 3.390625 3.171875 9.546875q0 0.375 -0.015625 1.125l-18.5625 0q0.234375 4.109375 2.3125 6.296875q2.09375 2.171875 5.203125 2.171875q2.328125 0 3.96875 -1.21875q1.640625 -1.21875 2.59375 -3.890625zm-13.84375 -6.828125l13.890625 0q-0.28125 -3.140625 -1.59375 -4.703125q-2.015625 -2.4375 -5.21875 -2.4375q-2.90625 0 -4.890625 1.953125q-1.984375 1.9375 -2.1875 5.1875z" fill-rule="nonzero"></path><path fill="#000000" fill-opacity="0.0" d="m435.90814 20.08399l240.09448 0l0 79.55906l-240.09448 0z" fill-rule="nonzero"></path><path fill="#000000" d="m457.68976 75.16399l0 -24.890625l3.796875 0l0 3.765625q1.453125 -2.640625 2.671875 -3.484375q1.234375 -0.84375 2.71875 -0.84375q2.125 0 4.328125 1.359375l-1.453125 3.90625q-1.546875 -0.90625 -3.09375 -0.90625q-1.375 0 -2.484375 0.828125q-1.09375 0.828125 -1.5625 2.3125q-0.703125 2.25 -0.703125 4.921875l0 13.03125l-4.21875 0zm33.0625 -8.015625l4.359375 0.53125q-1.03125 3.828125 -3.828125 5.9375q-2.78125 2.109375 -7.109375 2.109375q-5.46875 0 -8.671875 -3.359375q-3.1875 -3.375 -3.1875 -9.4375q0 -6.28125 3.234375 -9.75q3.234375 -3.46875 8.390625 -3.46875q4.984375 0 8.140625 3.40625q3.171875 3.390625 3.171875 9.546875q0 0.375 -0.015625 1.125l-18.5625 0q0.234375 4.109375 2.3125 6.296875q2.09375 2.171875 5.203125 2.171875q2.328125 0 3.96875 -1.21875q1.640625 -1.21875 2.59375 -3.890625zm-13.84375 -6.828125l13.890625 0q-0.28125 -3.140625 -1.59375 -4.703125q-2.015625 -2.4375 -5.21875 -2.4375q-2.90625 0 -4.890625 1.953125q-1.984375 1.9375 -2.1875 5.1875zm24.507812 14.84375l0 -21.609375l-3.71875 0l0 -3.28125l3.71875 0l0 -2.65625q0 -2.5 0.453125 -3.71875q0.609375 -1.640625 2.140625 -2.65625q1.53125 -1.03125 4.296875 -1.03125q1.78125 0 3.9375 0.421875l-0.625 3.6875q-1.3125 -0.234375 -2.484375 -0.234375q-1.921875 0 -2.71875 0.828125q-0.796875 0.8125 -0.796875 3.0625l0 2.296875l4.84375 0l0 3.28125l-4.84375 0l0 21.609375l-4.203125 0zm29.367188 -8.015625l4.359375 0.53125q-1.03125 3.828125 -3.828125 5.9375q-2.78125 2.109375 -7.109375 2.109375q-5.46875 0 -8.671875 -3.359375q-3.1875 -3.375 -3.1875 -9.4375q0 -6.28125 3.234375 -9.75q3.234375 -3.46875 8.390625 -3.46875q4.984375 0 8.140625 3.40625q3.171875 3.390625 3.171875 9.546875q0 0.375 -0.015625 1.125l-18.5625 0q0.234375 4.109375 2.3125 6.296875q2.09375 2.171875 5.203125 2.171875q2.328125 0 3.96875 -1.21875q1.640625 -1.21875 2.59375 -3.890625zm-13.84375 -6.828125l13.890625 0q-0.28125 -3.140625 -1.59375 -4.703125q-2.015625 -2.4375 -5.21875 -2.4375q-2.90625 0 -4.890625 1.953125q-1.984375 1.9375 -2.1875 5.1875zm23.460938 14.84375l0 -24.890625l3.796875 0l0 3.765625q1.453125 -2.640625 2.671875 -3.484375q1.234375 -0.84375 2.71875 -0.84375q2.125 0 4.328125 1.359375l-1.453125 3.90625q-1.546875 -0.90625 -3.09375 -0.90625q-1.375 0 -2.484375 0.828125q-1.09375 0.828125 -1.5625 2.3125q-0.703125 2.25 -0.703125 4.921875l0 13.03125l-4.21875 0zm33.0625 -8.015625l4.359375 0.53125q-1.03125 3.828125 -3.828125 5.9375q-2.78125 2.109375 -7.109375 2.109375q-5.46875 0 -8.671875 -3.359375q-3.1875 -3.375 -3.1875 -9.4375q0 -6.28125 3.234375 -9.75q3.234375 -3.46875 8.390625 -3.46875q4.984375 0 8.140625 3.40625q3.171875 3.390625 3.171875 9.546875q0 0.375 -0.015625 1.125l-18.5625 0q0.234375 4.109375 2.3125 6.296875q2.09375 2.171875 5.203125 2.171875q2.328125 0 3.96875 -1.21875q1.640625 -1.21875 2.59375 -3.890625zm-13.84375 -6.828125l13.890625 0q-0.28125 -3.140625 -1.59375 -4.703125q-2.015625 -2.4375 -5.21875 -2.4375q-2.90625 0 -4.890625 1.953125q-1.984375 1.9375 -2.1875 5.1875zm23.507812 14.84375l0 -24.890625l3.796875 0l0 3.53125q2.734375 -4.09375 7.921875 -4.09375q2.25 0 4.125 0.8125q1.890625 0.796875 2.828125 2.109375q0.9375 1.3125 1.3125 3.125q0.234375 1.171875 0.234375 4.09375l0 15.3125l-4.21875 0l0 -15.140625q0 -2.578125 -0.5 -3.859375q-0.484375 -1.28125 -1.734375 -2.03125q-1.25 -0.765625 -2.9375 -0.765625q-2.703125 0 -4.65625 1.71875q-1.953125 1.703125 -1.953125 6.484375l0 13.59375l-4.21875 0zm42.929688 -9.125l4.15625 0.546875q-0.6875 4.28125 -3.484375 6.71875q-2.796875 2.421875 -6.875 2.421875q-5.109375 0 -8.21875 -3.34375q-3.109375 -3.34375 -3.109375 -9.578125q0 -4.03125 1.328125 -7.046875q1.34375 -3.03125 4.078125 -4.53125q2.734375 -1.515625 5.9375 -1.515625q4.0625 0 6.640625 2.046875q2.578125 2.046875 3.296875 5.828125l-4.09375 0.625q-0.59375 -2.5 -2.078125 -3.765625q-1.484375 -1.265625 -3.59375 -1.265625q-3.1875 0 -5.1875 2.28125q-1.984375 2.28125 -1.984375 7.234375q0 5.015625 1.921875 7.296875q1.921875 2.265625 5.015625 2.265625q2.484375 0 4.140625 -1.515625q1.671875 -1.53125 2.109375 -4.703125zm24.796875 1.109375l4.359375 0.53125q-1.03125 3.828125 -3.828125 5.9375q-2.78125 2.109375 -7.109375 2.109375q-5.46875 0 -8.671875 -3.359375q-3.1875 -3.375 -3.1875 -9.4375q0 -6.28125 3.234375 -9.75q3.234375 -3.46875 8.390625 -3.46875q4.984375 0 8.140625 3.40625q3.171875 3.390625 3.171875 9.546875q0 0.375 -0.015625 1.125l-18.5625 0q0.234375 4.109375 2.3125 6.296875q2.09375 2.171875 5.203125 2.171875q2.328125 0 3.96875 -1.21875q1.640625 -1.21875 2.59375 -3.890625zm-13.84375 -6.828125l13.890625 0q-0.28125 -3.140625 -1.59375 -4.703125q-2.015625 -2.4375 -5.21875 -2.4375q-2.90625 0 -4.890625 1.953125q-1.984375 1.9375 -2.1875 5.1875z" fill-rule="nonzero"></path></g></svg> + diff --git a/testing/web-platform/tests/css/css-writing-modes/test-plan/img/heavy_h.svg b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/heavy_h.svg new file mode 100644 index 0000000000..29aa998860 --- /dev/null +++ b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/heavy_h.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" standalone="yes"?> + +<svg version="1.1" viewBox="0.0 0.0 1152.0 1152.0" fill="none" stroke="none" stroke-linecap="square" stroke-miterlimit="10" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><clipPath id="p.0"><path d="m0 0l1152.0 0l0 1152.0l-1152.0 0l0 -1152.0z" clip-rule="nonzero"></path></clipPath><g clip-path="url(#p.0)"><path fill="#000000" fill-opacity="0.0" d="m0 0l1152.0 0l0 1152.0l-1152.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m418.51968 418.51968l314.9606 0l0 314.9606l-314.9606 0z" fill-rule="nonzero"></path><path stroke="#09f" stroke-width="24.0" stroke-linejoin="round" stroke-linecap="butt" stroke-dasharray="40.0,30.0" d="m418.51968 418.51968l314.9606 0l0 314.9606l-314.9606 0z" fill-rule="nonzero"></path><path fill="#000000" d="m103.55905 103.55905l314.96063 0l0 944.88184l-314.96063 0z" fill-rule="nonzero"></path><path fill="#000000" d="m733.4803 103.55905l314.96063 0l0 944.88184l-314.96063 0z" fill-rule="nonzero"></path></g></svg> + diff --git a/testing/web-platform/tests/css/css-writing-modes/test-plan/img/heavy_h_rotated.svg b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/heavy_h_rotated.svg new file mode 100644 index 0000000000..4616bf3260 --- /dev/null +++ b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/heavy_h_rotated.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" standalone="yes"?> + +<svg version="1.1" viewBox="0.0 0.0 1152.0 1152.0" fill="none" stroke="none" stroke-linecap="square" stroke-miterlimit="10" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><clipPath id="p.0"><path d="m0 0l1152.0 0l0 1152.0l-1152.0 0l0 -1152.0z" clip-rule="nonzero"></path></clipPath><g clip-path="url(#p.0)"><path fill="#000000" fill-opacity="0.0" d="m0 0l1152.0 0l0 1152.0l-1152.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m733.4803 418.51968l0 314.9606l-314.9606 0l0 -314.9606z" fill-rule="nonzero"></path><path stroke="#09f" stroke-width="24.0" stroke-linejoin="round" stroke-linecap="butt" stroke-dasharray="40.0,30.0" d="m733.4803 418.51968l0 314.9606l-314.9606 0l0 -314.9606z" fill-rule="nonzero"></path><path fill="#000000" d="m1048.4409 103.55905l0 314.96063l-944.88184 0l0 -314.96063z" fill-rule="nonzero"></path><path fill="#000000" d="m1048.4409 733.4803l0 314.96063l-944.88184 0l0 -314.96063z" fill-rule="nonzero"></path></g></svg> + diff --git a/testing/web-platform/tests/css/css-writing-modes/test-plan/img/over_and_under.svg b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/over_and_under.svg new file mode 100644 index 0000000000..29b3c17d16 --- /dev/null +++ b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/over_and_under.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" standalone="yes"?> + +<svg version="1.1" viewBox="0.0 0.0 400.0 240.0" fill="none" stroke="none" stroke-linecap="square" stroke-miterlimit="10" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><clipPath id="p.0"><path d="m0 0l400.0 0l0 240.0l-400.0 0l0 -240.0z" clip-rule="nonzero"></path></clipPath><g clip-path="url(#p.0)"><path fill="#000000" fill-opacity="0.0" d="m0 0l400.0 0l0 240.0l-400.0 0z" fill-rule="nonzero"></path><path fill="#ffffff" d="m104.0 24.0l192.0 0l0 192.0l-192.0 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" stroke-dasharray="8.0,6.0" d="m104.0 24.0l192.0 0l0 192.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m104.0 200.0l192.0 0l0 16.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m104.0 24.0l192.0 0l0 16.0l-192.0 0z" fill-rule="nonzero"></path></g></svg> + diff --git a/testing/web-platform/tests/css/css-writing-modes/test-plan/img/pointing_right.svg b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/pointing_right.svg new file mode 100644 index 0000000000..9e5dd37601 --- /dev/null +++ b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/pointing_right.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" standalone="yes"?> + +<svg version="1.1" viewBox="0.0 0.0 400.0 240.0" fill="none" stroke="none" stroke-linecap="square" stroke-miterlimit="10" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><clipPath id="p.0"><path d="m0 0l400.0 0l0 240.0l-400.0 0l0 -240.0z" clip-rule="nonzero"></path></clipPath><g clip-path="url(#p.0)"><path fill="#000000" fill-opacity="0.0" d="m0 0l400.0 0l0 240.0l-400.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m104.0 24.0l192.0 0l0 192.0l-192.0 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" stroke-dasharray="8.0,6.0" d="m104.0 24.0l192.0 0l0 192.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#ffffff" d="m153.37007 66.07874l93.25986 53.921257l-93.25986 53.921265z" fill-rule="nonzero"></path></g></svg> + diff --git a/testing/web-platform/tests/css/css-writing-modes/test-plan/img/pointing_up.svg b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/pointing_up.svg new file mode 100644 index 0000000000..1abffd4936 --- /dev/null +++ b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/pointing_up.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" standalone="yes"?> + +<svg version="1.1" viewBox="0.0 0.0 400.0 240.0" fill="none" stroke="none" stroke-linecap="square" stroke-miterlimit="10" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><clipPath id="p.0"><path d="m0 0l400.0 0l0 240.0l-400.0 0l0 -240.0z" clip-rule="nonzero"></path></clipPath><g clip-path="url(#p.0)"><path fill="#000000" fill-opacity="0.0" d="m0 0l400.0 0l0 240.0l-400.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m104.0 24.0l192.0 0l0 192.0l-192.0 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" stroke-dasharray="8.0,6.0" d="m104.0 24.0l192.0 0l0 192.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#ffffff" d="m146.07874 166.62993l53.921265 -93.25985l53.921265 93.25985z" fill-rule="nonzero"></path></g></svg> + diff --git a/testing/web-platform/tests/css/css-writing-modes/test-plan/img/square_black.svg b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/square_black.svg new file mode 100644 index 0000000000..9198fe5dbc --- /dev/null +++ b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/square_black.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" standalone="yes"?> + +<svg version="1.1" viewBox="0.0 0.0 400.0 240.0" fill="none" stroke="none" stroke-linecap="square" stroke-miterlimit="10" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><clipPath id="p.0"><path d="m0 0l400.0 0l0 240.0l-400.0 0l0 -240.0z" clip-rule="nonzero"></path></clipPath><g clip-path="url(#p.0)"><path fill="#000000" fill-opacity="0.0" d="m0 0l400.0 0l0 240.0l-400.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m104.0 24.0l192.0 0l0 192.0l-192.0 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" stroke-dasharray="8.0,6.0" d="m104.0 24.0l192.0 0l0 192.0l-192.0 0z" fill-rule="nonzero"></path></g></svg> + diff --git a/testing/web-platform/tests/css/css-writing-modes/test-plan/img/square_blank.svg b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/square_blank.svg new file mode 100644 index 0000000000..14a2b3eef2 --- /dev/null +++ b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/square_blank.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" standalone="yes"?> + +<svg version="1.1" viewBox="0.0 0.0 400.0 240.0" fill="none" stroke="none" stroke-linecap="square" stroke-miterlimit="10" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><clipPath id="p.0"><path d="m0 0l400.0 0l0 240.0l-400.0 0l0 -240.0z" clip-rule="nonzero"></path></clipPath><g clip-path="url(#p.0)"><path fill="#000000" fill-opacity="0.0" d="m0 0l400.0 0l0 240.0l-400.0 0z" fill-rule="nonzero"></path><path fill="#ffffff" d="m104.0 24.0l192.0 0l0 192.0l-192.0 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" stroke-dasharray="8.0,6.0" d="m104.0 24.0l192.0 0l0 192.0l-192.0 0z" fill-rule="nonzero"></path></g></svg> + diff --git a/testing/web-platform/tests/css/css-writing-modes/test-plan/img/stripe_double.svg b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/stripe_double.svg new file mode 100644 index 0000000000..9b4f5df950 --- /dev/null +++ b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/stripe_double.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" standalone="yes"?> + +<svg version="1.1" viewBox="0.0 0.0 400.0 240.0" fill="none" stroke="none" stroke-linecap="square" stroke-miterlimit="10" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><clipPath id="p.0"><path d="m0 0l400.0 0l0 240.0l-400.0 0l0 -240.0z" clip-rule="nonzero"></path></clipPath><g clip-path="url(#p.0)"><path fill="#000000" fill-opacity="0.0" d="m0 0l400.0 0l0 240.0l-400.0 0z" fill-rule="nonzero"></path><path fill="#ffffff" d="m44.0 24.0l192.0 0l0 192.0l-192.0 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" stroke-dasharray="8.0,6.0" d="m44.0 24.0l192.0 0l0 192.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m44.0 200.0l192.0 0l0 16.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m44.0 168.0l192.0 0l0 16.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#ffffff" d="m260.0 24.0l96.0 0l0 192.0l-96.0 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" stroke-dasharray="8.0,6.0" d="m260.0 24.0l96.0 0l0 192.0l-96.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m260.0 200.0l96.0 0l0 16.0l-96.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m260.0 168.0l96.0 0l0 16.0l-96.0 0z" fill-rule="nonzero"></path></g></svg> + diff --git a/testing/web-platform/tests/css/css-writing-modes/test-plan/img/stripe_quad.svg b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/stripe_quad.svg new file mode 100644 index 0000000000..64c47fabcd --- /dev/null +++ b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/stripe_quad.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" standalone="yes"?> + +<svg version="1.1" viewBox="0.0 0.0 400.0 240.0" fill="none" stroke="none" stroke-linecap="square" stroke-miterlimit="10" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><clipPath id="p.0"><path d="m0 0l400.0 0l0 240.0l-400.0 0l0 -240.0z" clip-rule="nonzero"></path></clipPath><g clip-path="url(#p.0)"><path fill="#000000" fill-opacity="0.0" d="m0 0l400.0 0l0 240.0l-400.0 0z" fill-rule="nonzero"></path><path fill="#ffffff" d="m68.0 24.0l192.0 0l0 192.0l-192.0 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" stroke-dasharray="8.0,6.0" d="m68.0 24.0l192.0 0l0 192.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m68.0 200.0l192.0 0l0 16.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m68.0 168.0l192.0 0l0 16.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m68.0 136.0l192.0 0l0 16.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m68.0 104.0l192.0 0l0 16.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#ffffff" d="m284.0 24.0l48.0 0l0 192.0l-48.0 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" stroke-dasharray="8.0,6.0" d="m284.0 24.0l48.0 0l0 192.0l-48.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m284.0 200.0l48.0 0l0 16.0l-48.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m284.0 168.0l48.0 0l0 16.0l-48.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m284.0 136.0l48.0 0l0 16.0l-48.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m284.0 104.0l48.0 0l0 16.0l-48.0 0z" fill-rule="nonzero"></path></g></svg> + diff --git a/testing/web-platform/tests/css/css-writing-modes/test-plan/img/stripe_triple.svg b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/stripe_triple.svg new file mode 100644 index 0000000000..9a2ef793c7 --- /dev/null +++ b/testing/web-platform/tests/css/css-writing-modes/test-plan/img/stripe_triple.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" standalone="yes"?> + +<svg version="1.1" viewBox="0.0 0.0 400.0 240.0" fill="none" stroke="none" stroke-linecap="square" stroke-miterlimit="10" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><clipPath id="p.0"><path d="m0 0l400.0 0l0 240.0l-400.0 0l0 -240.0z" clip-rule="nonzero"></path></clipPath><g clip-path="url(#p.0)"><path fill="#000000" fill-opacity="0.0" d="m0 0l400.0 0l0 240.0l-400.0 0z" fill-rule="nonzero"></path><path fill="#ffffff" d="m60.0036 24.0l192.0 0l0 192.0l-192.0 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" stroke-dasharray="8.0,6.0" d="m60.0036 24.0l192.0 0l0 192.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m60.0036 200.0l192.0 0l0 16.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m60.0036 168.0l192.0 0l0 16.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#000000" d="m60.0036 136.0l192.0 0l0 16.0l-192.0 0z" fill-rule="nonzero"></path><path fill="#ffffff" d="m276.0028 24.0l63.99359 0l0 192.0l-63.99359 0z" fill-rule="nonzero"></path><path stroke="#000000" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" stroke-dasharray="8.0,6.0" d="m276.0028 24.0l63.99359 0l0 192.0l-63.99359 0z" fill-rule="nonzero"></path><path fill="#000000" d="m276.0028 200.0l63.99359 0l0 16.0l-63.99359 0z" fill-rule="nonzero"></path><path fill="#000000" d="m276.0028 168.0l63.99359 0l0 16.0l-63.99359 0z" fill-rule="nonzero"></path><path fill="#000000" d="m276.0028 136.0l63.99359 0l0 16.0l-63.99359 0z" fill-rule="nonzero"></path></g></svg> + diff --git a/testing/web-platform/tests/css/css-writing-modes/test-plan/index.html b/testing/web-platform/tests/css/css-writing-modes/test-plan/index.html new file mode 100644 index 0000000000..926b62e997 --- /dev/null +++ b/testing/web-platform/tests/css/css-writing-modes/test-plan/index.html @@ -0,0 +1,503 @@ +<!DOCTYPE html> +<html> + <head> + <title>CSS Writing Modes testing strategy</title> + <meta http-equiv='Content-Type' content='text/html;charset=utf-8'/> + <!-- + === NOTA BENE === + For the three scripts below, if your spec resides on dev.w3 you can check them + out in the same tree and use relative links so that they'll work offline, + --> + <script src='http://www.w3.org/Tools/respec/respec-w3c-common' class='remove' async></script> + <script class='remove'> + var respecConfig = { + specStatus: "unofficial", + shortName: "css3-writingmodes-test-strategy", + editors: [ + { + name: "Shinsuke Matsuki", mailto: "shinsuke.matsuki@access-company.com", + company: "ACCESS", companyURL: "" + }, + { + name: "Masataka Yakura", mailto: "masataka.yakura@gmail.com", + company: "", companyURL: "" + }, + ], + testSuiteURI: "http://test.csswg.org/suites/css3-writing-modes/nightly-unstable/", + }; + </script> + <style> + a.bibref, + #references dt { + text-transform: uppercase; + } + </style> + + <style> + table + { + border-collapse:collapse; + } + table, td, th + { + border:1px solid black; + padding: 13px; + } + table + { + width: 100%; + } + img + { + width: 400px; + } + </style> + <style>/***************************************************************** + * ReSpec 3 CSS + * Robin Berjon - http://berjon.com/ + *****************************************************************/ + +/* --- INLINES --- */ +em.rfc2119 { + text-transform: lowercase; + font-variant: small-caps; + font-style: normal; + color: #900; +} + +h1 acronym, h2 acronym, h3 acronym, h4 acronym, h5 acronym, h6 acronym, a acronym, +h1 abbr, h2 abbr, h3 abbr, h4 abbr, h5 abbr, h6 abbr, a abbr { + border: none; +} + +dfn { + font-weight: bold; +} + +a.internalDFN { + color: inherit; + border-bottom: 1px solid #99c; + text-decoration: none; +} + +a.externalDFN { + color: inherit; + border-bottom: 1px dotted #ccc; + text-decoration: none; +} + +a.bibref { + text-decoration: none; +} + +cite .bibref { + font-style: normal; +} + +code { + color: #ff4500; +} + +/* --- TOC --- */ +.toc a, .tof a { + text-decoration: none; +} + +a .secno, a .figno { + color: #000; +} + +ul.tof, ol.tof { + list-style: none outside none; +} + +.caption { + margin-top: 0.5em; + font-style: italic; +} + +/* --- TABLE --- */ +table.simple { + border-spacing: 0; + border-collapse: collapse; + border-bottom: 3px solid #005a9c; +} + +.simple th { + background: #005a9c; + color: #fff; + padding: 3px 5px; + text-align: left; +} + +.simple th[scope="row"] { + background: inherit; + color: inherit; + border-top: 1px solid #ddd; +} + +.simple td { + padding: 3px 10px; + border-top: 1px solid #ddd; +} + +.simple tr:nth-child(even) { + background: #f0f6ff; +} + +/* --- DL --- */ +.section dd > p:first-child { + margin-top: 0; +} + +.section dd > p:last-child { + margin-bottom: 0; +} + +.section dd { + margin-bottom: 1em; +} + +.section dl.attrs dd, .section dl.eldef dd { + margin-bottom: 0; +} +</style><link rel="stylesheet" href="https://www.w3.org/StyleSheets/TR/w3c-unofficial"><!--[if lt IE 9]><script src='https://www.w3.org/2008/site/js/html5shiv.js'></script><![endif]--> + + </head> + <body> + <section id='abstract'> + <p> + This document is intended to be used as a guideline for the testing + activities related to the CSS Writing Modes spec [[!css3-writing-modes]]. Its main + goal is to provide an overview of the general testing areas, possible + caveats and testing aspects not immediately apparent from the spec. + Also, it provides a means of tracking the progress of the CSS Writing Modes + spec testing. + </p> + <p> + This document is not meant to replace the spec in determining the + normative and non-normative assertions to be tested, but rather + complement it. + </p> + </section> + + <section> + <h2>Introduction</h2> + <p> + As CSS moved away from the monolithic development of CSS 2.1 to the + modular development of CSS 3, the number of proposed new features and + the complexity of the layout landscape have increased dramatically. + While this directly translates to increased flexibility and agility in + adopting and implementing new CSS features, it also increases the + complexity of testing CSS features and the need for coordinating the + testing efforts. Also, the need for testing coordination increases as + crowd-sourcing efforts like + <a href="http://testthewebforward.org/" target="_blank">Test the Web + Forward</a> present people less familiar with the processes and policies + of the W3C with the opportunity to contribute new tests. + </p> + <p> + Except when defining new behaviors or redefining old behaviors, the + implicit assumption for new CSS modules is that they play nicely with + other modules or properties defined in CSS 2.1 [[CSS21]]. As CSS + Writing Modes is a spec that touches many aspects of layout, styling and CSSOM, + it's not unreasonable to want to test the spec against these implicit + assumptions, too. + </p> + <p> + This testing strategy document is meant to complement the CSS Writing Modes + spec and the existing test suite by providing an overview of the testing + areas (especially the less apparent ones) and tracking the progress of + the testing activities against these test areas. + </p> + </section> + <section> + <h2>Goals</h2> + <p> + To ensure a comprehensive test suite with useful, high quality tests, a + number of goals are proposed. They range from process goals (how to + conduct testing) to implementation goals (how to write good tests). + </p> + <section> + <h3>Enabling easy test contribution</h3> + <p> + An important vector in successfully testing CSS Writing Modes is to + enable easy test contributions, both from W3C partners and from + non-W3C members that wish to contribute. This is achieved by clearly + marking and explaining the areas that need testing, linked to existing + tests and general testing progress. + </p> + </section> + <section> + <h3>Providing guidance on testing</h3> + <p> + In order to increase the quality of the test contributions, this + document offers a set of guidelines for conducting testing (see + <a href="#approach" class="sectionRef"></a>) and a testing progress + tracker to increase the surface coverage of tests (see + <a href="#test-progress-tracking" class="sectionRef"></a>). + </p> + </section> + <section> + <h3>Creating automation-friendly tests</h3> + <p> + In terms of actual tests produced for the CSS Writing Modes, the main goal + is to ensure that most tests are automatable (i.e. they're either + reftests or use <code>testharness.js</code>). Even where manual tests + are absolutely necessary they should be written so that they can be + easily automated – as there are on-going efforts to make + WebDriver [[webdriver]] automated tests a first class citized in W3C + testing. This means that even if a manual test requires user + interaction, the validation or PASS/FAIL conditions should still be + clear enough as to allow automatic validation if said interaction is + later automated. + </p> + + <p> + In particular need a special font in the test of CSS Writing Modes. Since these are is assumed of many tests, people who try to create the test now, check to see whether any available font. + </p> + </section> + </section> + <section> + <h2>Risks and mitigation</h2> + <p> + There are a number of risks associated with creating a high-quality + test suite for CSS Writing Modes. The most important ones are listed below. + </p> + <section> + <h3>Implicit interactions with a lot of other specs (and commonly accepted + browser behavior)</h3> + <p> + The CSS Writing Modes spec introduces a significant change in the way layout + can be done and as a consequence, many of the assumptions that hold in + the context of CSS 2.1 must be re-validated in the context of CSS + Writing Modes. In the meanwhile, a lot of new layout modules have been + proposed, with various degrees of implementer support and maturity. + Also, non-CSS specific specs introduced concepts that affect how style + is propagated (e.g. Shadow DOM [[shadow-dom]]) or how elements are + rendered and interact with their containing documents (e.g. + <code><iframe seamless></code> in HTML 5 [[HTML5]]). + </p> + <p> + All the above factors increase the testing surface and the number of + the possible cases that might need an explicitly specified behavior in + order to ensure intuitive and predictable results as well as stable + interaction with widely used browser features (that might not be <em>yet</em> + so strictly specified). + </p> + <p> + In terms of specifying the expected behavior, the current approach is + to try and specify it for specs that are final or nearly-final and to + just make a note of the possible interactions and unspecified behaviors + in the case of specs that are still in flux. In exceptional cases, a + new spec might be created to cater for the needs of multiple specs + (e.g. the CSS Fragmentation spec [[css3-break]]). + </p> + </section> + <section> + <h3>Big number of tests required</h3> + <div class="note"> + Add here the estimation of tests required produced by + <a href="https://github.com/web-platform-tests/wpt/tree/master/tools/coverage" target="_blank">W3C test coverage</a> + tool. If possible, provide a better informed guess on the number of tests. + </div> + <p> + Given the complexity of the spec, a big number of tests will need to + be created to produce a test suite that can ensure interoperability + between implementations. + </p> + <p> + In this context, the main purpose of this document is to provide + useful informations for creating and contributing tests in an effective + manner in terms of coverage and test quality. + </p> + </section> + <section> + <h3>Special fonts required</h3> + <p> + For building reftest, several special fonts are necessary. + If could not get some fonts, a test will be manual or reftest waiting fonts. + </p> + </section> + </section> + <section> + <h2>Approach</h2> + <p> + As spec testing cannot be realistically separated from testing a + particular implementation (except for the very simple cases), the + approach proposed for testing is one that tries to first cover as many + areas as possible, instead of deep diving on a certain feature or aspect + of the spec first. A side benefit of this approach is that the spec + tests can be used at any time to gauge the level of support of a certain + implementation. + </p> + <p> + Having this <em>breadth-first</em> approach in mind, tests will be + created for the testing areas listed in <a href="#testing-areas" + class="sectionRef"></a>. Testing will be done in multiple passes, each + aimed at covering more specific edge-cases. + </p> + <p> + The selection of test data, in terms of parsing, rendering, choose only one typical values from the data set on the same effect (It is a test technique known "equivalence partitioning"). + </p> + + </section> + <section> + <h2>Testing areas</h2> + <section> + <h3>Explicit testing areas</h3> + <p> + These are testing areas normatively defined by the spec. They cover + things explicitly or implicitly defined in the CSS Writing Modes spec. + Please note that while detailed, this list is not necessarily + exhaustive and normative behaviors may not be contained in it. + When in doubt, consult the CSS Writing Modes spec or ask a question on the + <a href="http://lists.w3.org/Archives/Public/www-style/">mailing + list</a>. + </p> + <p> + <h4>Overview</h4> + Below is the list of explicit testing areas: + <ol> + <li> + Proper parsing of the CSS properties and rules, rendering + according to the spec. + <ul> + <li><code>direction</code></li> + <li><code>unicode-bidi</code></li> + <li><code>writing-mode</code></li> + <li><code>text-orientation</code></li> + <li><code>caption-side</code></li> + <li><code>text-combine-upright</code></li> + </ul> + </li> + Test the following set of elements as a group to the 'Applies to' description. + <ul> + <li>inline element, inline block, replaced elements, block element, list-item +, table, inline-table, table-header-group, table-footer-group, table-cell, table-caption</li> + <li><code>display:none</code></li> + <li>inherit</li> + </ul> + Selected as a representative following four frequently used as 'replace element'. + <ul> + <li><code>button</code></li> + <li><code>input:text</code></li> + <li><code>select</code></li> + <li><code>text-area</code></li> + </ul> + </li> + <li> + Box related specifications that are affected as specified by <code>writing-mode</code>, <code>text-orientation</code>. The original definition about 'Box model' see [[CSS21]] for details. Calculation of the following in particular: + <ul> + <li><code>margin</code></li> + <li><code>border</code></li> + <li><code>padding</code></li> + </ul> + </li> + <li> + Compression of the glyph in horizontal-in-vertical(tate-chu-yoko) when using the text-transform [[!css3-text]] and OpenType properties. + </li> + <li> + Positioning, sizing and Auto-sizing of the box in orthogonal flows. + </li> + <li> + Text Baselines in vertical writing mode. + <ul> + <li>alphabetic</li> + <li>central</li> + </ul> + </li> + </ol> + </p> + <h3>Each Section</h3> + <ol> + <h3>Sec 2.Inline Direction and Bidirectionality</h3> + <p> + Parse, Rendering fundamental when combined the <code>direction</code> property and the <code>unicode-bidi</code> property. Applying Unicode bidirectional algorithm, behavior when the value is a newline. Placement of split inline-box. Calculation positioning of the box element. + </p> + <h3>Sec 3.Introduction to Vertical Text</h3> + <p> + Parse, Rendering fundamental for the <code>writing-mode</code> property. Character should be considered in particular the placement in vertical writing mode(Punctuation, etc. Onbiki in Japanese). Rendering for principal writing mode. Handling of child block in the case of line feed direction different from the container block. Converte value of the SVG in the writing-mode. + </p> + + <h3>Sec 4.Inline-level Alignment</h3> + <p> + Consider baseline alphabetic, central in this specification. Baseline in vertical alignment for glyph, processing of dominant baseline. + <div class="note"> + 'dominant baseline' testing in CSS21 side? + </div> + </p> + <h3>Sec 5.Introduction to Vertical Text Layout</h3> + <p> + Parse, Rendering fundamental for the <code>text-orientation</code> property. rendering when the vertical writing mode. Rules of Appendix C. + </p> + <h3>Sec 6.Abstract Box Terminology</h3> + <p> + Processing over and under in line-relative directions. left, right adding in vertical writing mode to line-box. The processing of before, after, start, end of each block-level-element, inline-level-element in flow-relative directions. + </p> + <h3>Sec 7.Abstract Box Layout</h3> + <p> + Layout rule that refers to property in the box when in vertical writing mode and margin collapsing. Sizing, auto-sizing of the writing modes in Orthogonal Flow. Margin calculation in the case of Flow-Relative. Position calculation in the case of Line-Relative. Properties that do not affect the WritingMode. rendering and parsing of <code>caption-side</code> property. + </p> + <h3>Sec 8.Page Flow: the page progression direction</h3> + <p> + It is a page feed flow specification of UA, is beyond the scope of the current test environment. + </p> + <h3>Sec 9.Glyph Composition</h3> + <p> + Parse, Rendering fundamental for the <code>text-combine-upright</code> property. rendering when the vertical writing mode. Interrupted by a box boundary in text run-rules. Glyph of centering in 1em box. Several algorithms to compress the 1em glyph of multiple. + </p> + </ol> + + </section> + <section> + <h3>Implicit testing areas</h3> + <p> + These are testing areas either normatively defined in other specs + that explicitly refer to the CSS Writing Modes spec (e.g. [[css3-text]]) + or simply not explicitly defined, but implied by various aspects of + the spec (e.g. processing model, CSS 2.1 compliance, etc.). + Please note that while detailed, this list is not necessarily + exhaustive and normative behaviors may not be contained in it. + When in doubt, consult the CSS Writing Modes spec or ask a question on the + <a href="http://lists.w3.org/Archives/Public/www-style/">mailing + list</a>. + </p> + <p> + Below is the list of implicit testing areas: + <ol> + <li> + CSS Writing Modes and layout modules: + <ul> + <li><code>overflow</code></li> + <li><code>clip</code></li> + <li><code>line-height</code></li> + <li>the <code>alt</code> attribute </li> + </ul> + </li> + </ol> + </p> + </section> + </section> + <section> + <h2>People and responsibilities</h2> + <p> + Below is a list of people you should reach out to if you have any + questions related to this document or testing CSS Writing Modes in general: + <ul> + <li>fantasai – editor for CSS Writing Modes spec</li> + <li>Koji Ishii – editor for CSS Writing Modes spec</li> + <li>Rebecca Hauck – CSSWG testing owner</li> + </ul> + </p> + </section> + <section> + <h2>Test progress tracking</h2> + <p> + Currently test progress tracking is done via gitHub + <a href="https://github.com/w3c/csswg-test/issues/milestones?with_issues=yes">milestones</a> + and <a href="https://github.com/w3c/csswg-test/issues?milestone=9&state=open">issues</a>. + </p> + </section> + </body> +</html> diff --git a/testing/web-platform/tests/css/css-writing-modes/test-plan/req-tcu-font.html b/testing/web-platform/tests/css/css-writing-modes/test-plan/req-tcu-font.html new file mode 100644 index 0000000000..d329eea041 --- /dev/null +++ b/testing/web-platform/tests/css/css-writing-modes/test-plan/req-tcu-font.html @@ -0,0 +1,505 @@ +<!DOCTYPE html> +<html> +<head> +<title>Requirements for fonts for testing text-combine-upright</title> +<meta charset='utf-8'> +<script class='remove'> +var respecConfig = { + specStatus: "unofficial", + shortName: "req-tcu-font", + editors: [ { name: "Masataka Yakura", url: "https://google.com/+MasatakaYakura" } ], + publishDate: "2015-01-28", +}; +</script> +<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" /> +<style> +/***************************************************************** + * ReSpec 3 CSS + * Robin Berjon - http://berjon.com/ + *****************************************************************/ + +/* --- INLINES --- */ +em.rfc2119 { text-transform: lowercase; font-variant: small-caps; font-style: normal; color: #900; } +h1 abbr, h2 abbr, h3 abbr, h4 abbr, h5 abbr, h6 abbr, a abbr { border: none; } +dfn { font-weight: bold; } +a.internalDFN { color: inherit; border-bottom: 1px solid #99c; text-decoration: none; } +a.externalDFN { color: inherit; border-bottom: 1px dotted #ccc; text-decoration: none; } +a.bibref { text-decoration: none; } +cite .bibref { font-style: normal; } +code { color: #C83500; } + +/* --- TOC --- */ +.toc a, .tof a { text-decoration: none; } +a .secno, a .figno { color: #000; } +ul.tof, ol.tof { list-style: none outside none; } +.caption { margin-top: 0.5em; font-style: italic; } + +/* --- TABLE --- */ +table.simple { border-spacing: 0; border-collapse: collapse; border-bottom: 3px solid #005a9c; } +.simple th { background: #005a9c; color: #fff; padding: 3px 5px; text-align: left; } +.simple th[scope="row"] { background: inherit; color: inherit; border-top: 1px solid #ddd; } +.simple td { padding: 3px 10px; border-top: 1px solid #ddd; } +.simple tr:nth-child(even) { background: #f0f6ff; } + +/* --- DL --- */ +.section dd > p:first-child { margin-top: 0; } +.section dd > p:last-child { margin-bottom: 0; } +.section dd { margin-bottom: 1em; } +.section dl.attrs dd, .section dl.eldef dd { margin-bottom: 0; } + +@media print { .removeOnSave { display: none; } } +</style> +<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" /> +<style>/* --- ISSUES/NOTES --- */ +div.issue-title, div.note-title { padding-right: 1em; min-width: 7.5em; color: #b9ab2d; } +div.issue-title { color: #e05252; } +div.note-title { color: #2b2; } +div.issue-title span, div.note-title span { text-transform: uppercase; } +div.note, div.issue { margin-top: 1em; margin-bottom: 1em; } +.note > p:first-child, .issue > p:first-child { margin-top: 0 } +.issue, .note { padding: .5em; border-left-width: .5em; border-left-style: solid; } +div.issue, div.note { padding: 1em 1.2em 0.5em; margin: 1em 0; position: relative; clear: both; } +span.note, span.issue { padding: .1em .5em .15em; } +.issue { border-color: #e05252; background: #fbe9e9; } +.note { border-color: #52e052; background: #e9fbe9; } +</style> +<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" /> +<style>/* HIGHLIGHTS */ +code.prettyprint { color: inherit; } + +/* this from google-code-prettify */ +.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}ol.linenums{margin-top:0;margin-bottom:0}li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8{list-style-type:none}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} +</style> +<link rel="stylesheet" href="https://www.w3.org/StyleSheets/TR/w3c-unofficial"> +</head> +<body> + +<section id="abstract"> +<p>The <a href="https://drafts.csswg.org/css-writing-modes/">CSS Writing Modes</a> specification defines a property <code>text-combine-upright</code> which enables a <i>tate-chu-yoko</i> (<span lang="ja">縦中横</span>) effect; applying the property to a span of text will combine the text inside it horizontally so that it looks a single character in vertical writing modes. + +<p>While invesitigating the specification for developing test suite, test authors found the need for a new font specifically designed to test the property. This document gives a fairly basic guide to CSS testing and testing <code>text-combine-upright</code> specifically, and lists the requiremnts of the font needed to test the property. +</section> + +<section> +<h2>CSS testing terminology</h2> +<p>Before getting into the requirements of fonts, let me explain some terms specific to CSS testing. + +<section> +<h3>Reftests (reference tests)</h3> +<p>A <a href="http://testthewebforward.org/docs/reftests.html">reftest</a> are one of the testing format used in W3C and browser vendors for testing features that add visual effects to a page such as CSS and SVG. A reftest are madte of two (or more) files: a test case made using features to test, and reference file(s) made using widely-implemented-and-deployed features (e.g. CSS2). On conforming implementation the reference and the test case will visually match. +<p>For ease of testing, references often use simple geometric shapes such as <a href="http://test.csswg.org/source/css-flexbox-1/reference/flexbox-flex-wrap-nowrap-ref.htm">green square</a>. +<figure> +<iframe src="../../css-flexbox-1/reference/flexbox-flex-wrap-nowrap-ref.htm" frameborder="0" width="400" height="200"></iframe> +<figcaption>A reference of green rectangle, used for a flexbox test</figcaption> +</figure> +</section> + +<section> +<h3>The Ahem font</h3> +<p>In order to test CSS features, it is required to install the <a href="http://www.w3.org/Style/CSS/Test/Fonts/Ahem/">Ahem font</a> in a testing system. The Ahem font only contains simple geometric glyphs such as a square and rectangles. With those simple glyphs it is easy to craft references and test cases. Here's a design specification of Ahem quoting from the README file: +<blockquote cite="http://www.w3.org/Style/CSS/Test/Fonts/Ahem/"> +<pre>The font's em square is exactly square. +Its ascent and descent is exactly the size of the em square. This +means that the font's extent is exactly the same as its line-height, +meaning that it can be exactly aligned with padding, borders, margins, +and so forth. + +The font's alphabetic baseline is 0.2em above its bottom, and 0.8em +below its top. The font has an x-height of 0.8em. + +The font has four glyphs: + + 'X' U+0058 A square exactly 1em in height and width. + + 'p' U+0070 A rectangle exactly 0.2em high, 1em wide, and aligned so + that its top is flush with the baseline. + + 'É' U+00C9 A rectangle exactly 0.8em high, 1em wide, and aligned so + that its bottom is flush with the baseline. + + ' ' U+0020 A transparent space exactly 1em high and wide. + +Most other US-ASCII characters in the font have the same glyph as X.</pre> +</blockquote> +</section> + +</section> + + +<section> +<h2>Testing <code>text-combine-upright</code></h2> +<p>The <a href="https://drafts.csswg.org/css-writing-modes/#text-combine-upright"><code>text-combine-upright</code></a> property combines a short run of text horizontally in vertical writing modes. The resulting effect is called <i>tate-chu-yoko</i> (<span lang="ja">縦中横</span>, sometimes abbreviated as <abbr>TCY</abbr> in CSSWG mailing lists) and used for short digits in vertical Japanese layout. +<figure class="example"> +<img src="https://drafts.csswg.org/css-writing-modes/tate-chu-yoko.png"> +<figcaption>Example of tate-chu-yoko (borrowed from the Writing Modes spec). The digits "20" and "16" are aligned horizontally. Also the digit "4" is rotated upright even it looks an ASCII digit; this is because "4" is also composed thus rotated.</figcaption> +</figure> +<p>In order to make reftests, it needs a font which contains geometric glyphs designed so that horizontally-combined glyphs and the reference would look the same (e.g. a 1em × 1em square glyph). With such font, a test can be written as follows: +<pre class="highlight"><code><style> +.test { + writing-mode: vertical-rl; + font-family: Ahem; +} +.tcy { + text-combine-upright: all; +} +</style> + +<p>Test passes if the following is identical:</p> + +<div class="test"> + <p><span class="tcy">123</span></p> + <p>x</p> +</div></code></pre> +<p>In conforming user agent with the font installed on the system, the span "123" will be combined horizontally thus rendered as a single square, resulting to match the reference. In non-conforming user agents the span will neither be combined nor be compressed as a single square, it will thus not match the reference rendering. +<figure class="example"> +<img src="img/figure-rendering-tcu.svg" width="480"> +<figcaption>An illustration of output from ① no-tcu-support UA, ② conforming UA, ③ reference file</figcaption> +</figure> + +<p>The above example uses Ahem; some tests can be written using Ahem. However, many features of <code>text-combine-upright</code> cannot be tested with only a black square glyph. Also the spec requires UAs with OpenType support to use OpenType features on rendering particular properties; to test this, the font must be an OpenType font with required fetures. +</section> + + +</section> + +<section> +<h2>Glyphs</h2> + +<p>This section describes requirements for glyphs that the font needs and gives some ideas of glyphs. + + +<section> +<h3>Glyphs that can be used as an alternative to Ahem glyphs</h3> +<p>In the prior section we demonstrate how we can test <code>text-combine-upright</code> using Ahem. In some cases tests can be written only using Ahem, but there are cases where we need additional glyphs. +<ul> + <li>A black square is a 1em × 1em square glyph; it is pretty much the same as Ahem's glyph for <code>x</code> + <li>A blank of 1em × 1em +</ul> +<figure> +<img src="img/square_black.svg" width="300"> +<img src="img/square_blank.svg" width="300"> +</figure> + +<p class="note">It might be okay with just using Ahem if tests needing black square only contain codepoints in ASCII-range. +</section> + + +<section> +<h3>Glyphs to check whether a character is rotated or not</h3> +<p><code>text-combine-upright</code> combines a span of text horizontally and make the resulting compression rendered upright, even when the element has just one character. +<p>If the element contains two or more characters, Ahem can be used to check if user agents support composition effect. However, if it is just a single character, Ahem cannot be used since most character in Ahem is a 1em square and thus cannot figure out whether the resulting coposition is rendered upright or not. +<p>Therefore, we need two glyphs where: +<ul> +<li>their widths and heights are 1em +<li>one matches another visually when another rotated 90° counterclockwise +</ul> +<figure> +<img src="img/pointing_right.svg" width="300"> +<img src="img/pointing_up.svg" width="300"> +<figcaption>example glyphs that satisfy the requirements above: "pointing-right" on left and "pointing-up" on right</figcaption> +</figure> +<p class="note">Yes, I stole the glyph idea from <a href="http://blogs.adobe.com/CCJKType/2013/05/css-orientation-test-opentype-fonts.html">CSS Orientation Test</a> font. +<figure> +<pre class="highlight"><code><style> +body { + writing-mode: vertical-rl; + font-family: SomeFont; +} +.test { + text-combine-upright: all; +} +.reference { + text-orientaiton: upright; +} +</style> + +<p class="test">A</p> +<p class="reference">B</p></code></pre> +<figcaption>Test code might look like this</figcaption> +</figure> + +<p class="note">These glyphs are not directly related to TCY so perhaps it should go to CSS Orientation Test font. +</section> + + +<section> +<h3>Glyph to check whether the composition has no text decoration inside it</h3> +<p>In <a href="https://drafts.csswg.org/css-writing-modes/#text-combine-layout">Section 9.1.2 Layout Rules</a> it says: +<blockquote> +When combining text as for text-combine-upright: all, the glyphs of the combined text are composed horizontally (<mark>ignoring letter-spacing and any forced line breaks, but using the specified font settings</mark>), similar to the contents of an inline-box with a horizontal writing mode and a line-height of 1em. +</blockquote> +<p>Later in the section it says: +<blockquote> +For other text layout purposes, e.g. emphasis marks, text-decoration, spacing, etc. the resulting composition is treated as a single glyph representing the Object Replacement Character U+FFFC. +</blockquote> +<p>So we need to test if user agents ignore spacing, emphasis marks, decorations applied to <em>each</em> character inside the composition but rather apply those effects to the resulting composition, treating as if it were a single characeter. +<p>The test should be written to check if there is no emphasis mark or ruby character inside the composition. To make this easy to observe, we need a glyph where: +<ul> +<li>it does not overlap ruby text, emphasis mark, or any decoration +</ul> +<p>The following is an idea for such glyph: it draws overline and underline but does not do so in between them. +<figure> +<img src="img/over_and_under.svg" width="300"> +</figure> +<p>With such glyph, the test would be written as: +<figure> +<pre class="highlight"><code><style> +.test { + writing-mode: vertical-rl; + font-family: TCU-test; +} +.tcy { + text-combine-upright: all; + text-emphasis: sesame; +} +</style> + +<p><span class="tcy">AB</span></p></code></pre> +</figure> +<p>This will make the test reftestable. +<figure> +<img src="img/figure-over_and_under-pass.svg" width="300"> +<img src="img/figure-over_and_under-fail.svg" width="300"> +<figcaption>Conforming user agents apply text-emphasis as if the content inside <code><span class="tcy"></code> were a single character (left). Non-conforming user agents might apply text-emphasis to each character inside <code><span class="tcy"></code> (right)</figcaption> +</figure> +<p class="issue">This glyph cannot cover the assertion <q>the resulting composition is treated as a single glyph representing the Object Replacement Character U+FFFC</q>. Test authors are not sure if that will cause a visual effect that can be tested. +</section> + + +<section> +<h3>Glyphs that is larger than 1em square</h3> +<p>In <a href="https://drafts.csswg.org/css-writing-modes/#text-combine-layout">9.1.2 Layout Rules</a> the spec says: +<blockquote> +The effective size of the composition is assumed to be 1em square; anything outside the square is not measured for layout purposes. +</blockquote> +<p>Hence, we need a glyph where: +<ul> +<li>its size is greater than 1em square +</ul> +<figure> +<img src="img/heavy_h.svg" width="200"> +<!-- <img src="img/heavy_h_rotated.svg" width="200"> --> +<figcaption>The "Heavy H". The dashed region in the center of the glyph indicates the 1em square and the lines besides the square has the length of 3em and the thickness of 1em.</figcaption> +</figure> +<p>By using this glyph with two square glyphs we can make a 3em square. +<figure> +<pre class="highlight"><code><style> +body { + writing-mode: vertical-rl; + font-family: SomeFont; +} +.tcy { + text-combine-upright: all; +} +.reference { + font-size: 3em; + margin: 2em 0; +} +</style> + +<div class="test"> + <p>x<span class="tcy">H</span>x</p> + <p class="reference">x</p> +</div></code></pre> +<figcaption>The test code might look like this: it assumes that a black square glyph maps to <code>x</code> and the "Heavy H" glyph maps to <code>H</code></figcaption> +</figure> +</section> + +<section> +<h3>TBD</h3> +<p>In <a href="https://drafts.csswg.org/css-writing-modes/#text-combine-layout">9.1.2 Layout Rules</a> the spec says: +<blockquote> +The UA should center the glyphs horizontally and vertically within the measured 1em square. +</blockquote> +<p class="issue">work in progress. test authors are struggling with the look of shape(s) to use to create a reftest +<!-- +<p> +<ul> +<li> +</ul> +<figure> +<img src=""> +<figcaption></figcaption> +</figure> +<p> +--> +</section> + + +<section> +<h3>Glyphs to check whether <code><var>n</var>wid</code> OpenType features are used</h3> +<p>In <a href="https://drafts.csswg.org/css-writing-modes/#text-combine-compression">9.1.3 Compression Rules</a> the spec says: +<blockquote> +OpenType implementations must use width-specific variants (OpenType features hwid/twid/qwid; other glyph-width features such as fwid or pwid are not included) to compress text in cases where those variants are available for all characters in the composition. +</blockquote> +<p>In order to test this, we need glyphs for hwid, twid, and qwid; they need to be distinguishable from each other and also distinguishable from fwid/pwid glyphs. For the use in reference, we also need "extended" versions of hwid/twid/qwid glyphs; the widths of the extended version are all 1em. +</ul> + +<section> +<h4>A double stripe</h4> +<p>Used for the <i>hwid</i> feature. +<figure> +<img src="img/stripe_double.svg" width="300"> +<figcaption>double stripe. reference glyph on left, hwid glyph on right.</figure> +</figure> +</section> + +<section> +<h4>A triple stripe</h4> +<p>Used for the <i>twid</i> feature. +<figure> +<img src="img/stripe_triple.svg" width="300"> +<figcaption>triple stripe. reference glyph on left, twid glyph on right.</figure> +</figure> +</section> + +<section> +<h4>A quadruple stripe</h4> +<p>Used for the <i>qwid</i> feature. +<figure> +<img src="img/stripe_quad.svg" width="300"> +<figcaption>quadruple stripe. reference glyph on left, qwid glyph on right.</figure> +</figure> +</section> + +<p class="note">There might be cases where a character inside TCY does not have all features, the font need to have characters that only have (or miss) hwid/twid/qwid feature. Tests need to check combination of characters with different feature sets. + +<p class="issue">Since the processing details of compression rules are up to User Agents, when the resulting glyphs from composition differs from each other, the test can only be verified using negative references. +</section> + + +<section> +<h3>Glyphs to check the optional processing regarding U+6C34</h3> +<p>The last paragraph in <a href="https://drafts.csswg.org/css-writing-modes/#text-combine-compression">9.1.3 Compression Rules</a> says: +<blockquote> +In some fonts, the ideographic glyphs are given a compressed design such that they are 1em wide but shorter than 1em tall. To accommodate such fonts, the UA may vertically scale the the composition to match the advance height of 水 U+6C34. +</blockquote> +<p>We need two glyphs: +<ul> +<li>a glyph of horizontal rectangle (e.g. 1em × .8em), mapping to 0x6C34 +<li>a glyph of thinner horizontal rectangle (e.g. 1em × .3em), mapping to a certain codepoint +</ul> + +<p class="note">There is <a href="http://lists.w3.org/Archives/Public/www-style/2014Jul/0310.html">a spec issue</a>. +</section> + + +</section> + + +<section> +<h2>Glyph mappings</h2> + +<p>This section describes which glyph should map to which code points. + +<p class="note">This section is work-in-progress.</p> + +<section> +<h3>Font A <span class="issue">TODO: Name</span></h3> + +<p>Font A contains all glyphs except ones for checking <a href="#glyphs-to-check-whether-nwid-opentype-features-are-used">width-related features</a>.</p> + +<p class="note">Unless otherwise specified, glyphs are mapped to both in horizontal and in vetical (using the <code>vert</code> feature) modes.</p> + +<table class="simple" border> +<tr> +<th>Code Point +<th>Glyph +<th>Note + +<tr> +<td>x (U+0078) +<td>Black +<td> + +<tr> +<td>SPACE (U+0020) +<td>Blank +<td> + +<tr> +<td>R (U+0052) +<td>Pointing Right +<td> + +<tr> +<td>U (U+0055) +<td>Pointing Up +<td> + +<tr> +<td>O (U+004F) +<td>Overline+Underline +<td> + +<tr> +<td>h (U+0048) +<td>Heavy H +<td> + +<tr> +<td>r (U+072) +<td>Pointing Right and Pointing Up +<td> +default: Pointing Right<br> +vert: Pointing Up +</table> + +</section> + +<section> +<h3>Fonts to test width-variant features</h3> + +<p>These fonts test the <a href="#glyphs-to-check-whether-nwid-opentype-features-are-used">width-related features</a>. One font contains only <code>hwid</code> feature, and another contains all the five features (<code>hwid</code>, <code>twid</code>, <code>qwid</code>, <code>fwid</code>, and <code>pwid</code>).</p> + +<p>Below is a table for the latter font; the former (only contains <code>hwid</code> feature) lacks other four features.</p> + +<table class="simple" border> +<tr> +<th>Code Point +<th>Glyph +<th>Note + +<tr> +<td>a (U+0078) +<td>Double Stripe<br>Triple Stripe<br>Quadruple Stripe<br>Black +<td> +hwid: Double Stripe<br> +twid: Triple Stripe<br> +qwid: Quadruple Stripe<br> +fwid: Black<br> +pwid: Black<br> + +<tr> +<td>H (U+0078) +<td>Double Stripe +<td> +Used in reference + +<tr> +<td>T (U+0078) +<td>Triple Stripe +<td> +Used in reference + +<tr> +<td>Q (U+0078) +<td>Quadruple Stripe +<td> +Used in reference +</table> + +</section> + +</section> + + + +<section> +<h2>Acknowledgements</h2> +<p>Special thnks goes to the current and former editors of the Writing Modes specification: fantasai, Koji Ishii, and Shinyu Murakami +<p>In addition to the editors, this work wouldn't have been possible without help from: Taichi Kawabata +</section> + + +<script src='http://www.w3.org/Tools/respec/respec-w3c-common' async class='remove'></script>
\ No newline at end of file |