import FIREFOX_52_6_0esr_RELEASE from mozilla-esr52 hg repo

This commit is contained in:
Roy Tam 2018-01-19 03:59:58 +08:00
commit dcd9973243
150858 changed files with 23884658 additions and 0 deletions

View file

@ -0,0 +1,61 @@
.woff files for SVG-in-OpenType testing
=======================================
There are three .woff files in this directory:
* nosvg.woff
* svg.woff
* rubbish.woff
nosvg.woff
----------
This font is FiraSansOT-Regular, with its metrics hacked so that its ascent
is 1000 and descent is 0. Its unitsPerEm value is 1000.
It contains no 'SVG ' table.
svg.woff
--------
This font is the same as nosvg.woff above, but with the glyphs-*.svg SVG
documents from this directory embedded in it using the tools described below.
rubbish.woff
------------
This font is the same as nosvg.woff above, but with the addition of an 'SVG '
table with the contents of rubbish.txt. Its purpose is to test that SVG tables
without valid XML are ignored.
Creating the Fonts
------------------
The tools used here are insertsvg.py from [1] and sfnt2woff from [2].
svg.woff can be recreated with:
woff2sfnt nosvg.woff > nosvg.ttf
insertsvg.py nosvg.ttf svg.ttf glyphs-*.svg
sfnt2woff svg.ttf
[1] https://github.com/edf825/SVG-OpenType-Utils
[2] http://people.mozilla.com/~jkew/woff/
Additional test fonts:
======================
svg-glyph-extents.otf
---------------------
This is a copy of Fira Sans with a simple SVG table added using the tool from
https://github.com/rocallahan/svg-opentype-workshop. The SVG table defines four
glyphs, corresponding to 'A' through 'D':
<svg xmlns='http://www.w3.org/2000/svg'>
<rect id='glyph36' x='0' y='-1000' width='1000' height='1500' fill='red'/>
<rect id='glyph37' x='0' y='-1000' width='1000' height='1500' fill='green' transform='scale(2)'/>
<g id='glyph38'>
<rect x='0' y='-1000' width='1000' height='1500' fill='red'/>
</g>
<g id='glyph39'>
<rect x='0' y='-1000' width='1000' height='1500' fill='green' transform='scale(2)'/>
</g>
</svg>

View file

@ -0,0 +1,13 @@
<svg xmlns="http://www.w3.org/2000/svg">
<!--
Basic test SVG glyphs
Covers glyph ID 47
-->
<!-- char = L -->
<g id="glyph47">
<rect x="100" y="-900" width="800" height="800" stroke-width="50"
stroke="black" fill="red"/>
<rect x="100" y="-1000" width="100" height="100" stroke="none"
fill="turquoise" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 349 B

View file

@ -0,0 +1,40 @@
<svg xmlns="http://www.w3.org/2000/svg">
<!--
Test handling of invalid ids
-->
<!-- not valid: leading space not allowed -->
<g id="glyph 48">
<rect x="100" y="-900" width="800" height="800" stroke-width="50"
fill="red"/>
</g>
<!-- not valid: leading zero not allowed -->
<g id="glyph048">
<rect x="100" y="-900" width="800" height="800" stroke-width="50"
fill="red"/>
</g>
<!-- not valid: trailing garbage not allowed -->
<g id="glyph48xxx">
<rect x="100" y="-900" width="800" height="800" stroke-width="50"
fill="red"/>
</g>
<!-- not valid: trailing space not allowed -->
<g id="glyph48 ">
<rect x="100" y="-900" width="800" height="800" stroke-width="50"
fill="red"/>
</g>
<!-- not valid: floating point not allowed -->
<g id="glyph48.0">
<rect x="100" y="-900" width="800" height="800" stroke-width="50"
fill="red"/>
</g>
<!-- char = M -->
<g id="glyph48">
<rect x="100" y="-900" width="800" height="800" stroke-width="50"
fill="lime"/>
</g>
<!-- Ensure first glyph48 is picked -->
<g id="glyph48">
<rect x="100" y="-900" width="800" height="800" stroke-width="50"
fill="red"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View file

@ -0,0 +1,24 @@
<svg xmlns="http://www.w3.org/2000/svg">
<!--
Test SVG glyphs for text object pattern inheritance
Covers glyph ID range 49 (N) to 52 (Q)
-->
<!-- context-fill, no stroke -->
<!-- N -->
<rect x="100" y="-900" width="800" height="800" stroke-width="50"
stroke="none" fill="context-fill" id="glyph49"/>
<!-- O -->
<rect x="50" y="-950" width="900" height="900" stroke-width="100"
fill="context-fill" stroke="none" id="glyph50"/>
<!-- context-stroke -->
<!-- P -->
<rect x="100" y="-900" width="800" height="800" stroke-width="50"
stroke="context-stroke" fill="burlywood" id="glyph51"/>
<!-- both context-stroke and context-fill (but note swapped usage!) -->
<!-- Q -->
<rect x="50" y="-950" width="900" height="900" stroke-width="100"
fill="context-stroke" stroke="context-fill" id="glyph52"/>
</svg>

After

Width:  |  Height:  |  Size: 841 B

View file

@ -0,0 +1,59 @@
<svg xmlns="http://www.w3.org/2000/svg">
<!--
Test SVG glyphs for text object opacity inheritance
Covers glyph ID range 53 (R) to 60 (Y)
-->
<!-- R -->
<rect x="100" y="-900" width="800" height="800" stroke-width="50"
fill="context-fill" stroke="context-stroke"
fill-opacity="context-fill-opacity"
stroke-opacity="context-stroke-opacity" id="glyph53"/>
<!-- S -->
<rect x="100" y="-900" width="800" height="800" stroke-width="50"
fill="context-fill" stroke="context-stroke"
fill-opacity="context-stroke-opacity"
stroke-opacity="context-fill-opacity" id="glyph54"/>
<!-- T -->
<rect x="100" y="-900" width="800" height="800" stroke-width="50"
fill="context-stroke" stroke="context-fill"
fill-opacity="context-fill-opacity"
stroke-opacity="context-stroke-opacity" id="glyph55"/>
<!-- U -->
<!-- Test for bug where explicit `inherit' would fail for
*-opacity="objectStrokeOpacity" or "objectFillOpacity" -->
<g style="fill-opacity : context-stroke-opacity; stroke-opacity : context-fill-opacity">
<rect x="100" y="-900" width="800" height="800" stroke-width="50"
fill="context-stroke" stroke="context-fill"
fill-opacity="inherit" stroke-opacity="inherit" id="glyph56"/>
</g>
<!-- W -->
<rect x="100" y="-900" width="800" height="800" stroke-width="50"
fill="darkorchid" stroke="goldenrod"
fill-opacity="context-fill-opacity"
stroke-opacity="context-stroke-opacity" id="glyph58"/>
<!-- X -->
<rect x="100" y="-900" width="800" height="800" stroke-width="50"
fill="darkorchid" stroke="goldenrod"
fill-opacity="context-stroke-opacity"
stroke-opacity="context-fill-opacity" id="glyph59"/>
<style type="text/css"><![CDATA[
#glyph60 {
fill-opacity : context-fill-opacity;
stroke-opacity : context-stroke-opacity;
}
#ychild {
color-interpolation : sRGB;
}
]]></style>
<!-- Y -->
<g id="glyph60">
<rect x="100" y="-900" width="800" height="300" stroke="red" stroke-width="50"/>
<rect x="100" y="-400" width="800" height="300" stroke="red" stroke-width="50" id="ychild" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View file

@ -0,0 +1,25 @@
<svg xmlns="http://www.w3.org/2000/svg">
<!--
Test SVG glyphs for text object stroke value inheritance
Covers glyph ID range 68 (a) to 71 (d)
-->
<!-- a -->
<rect x="100" y="-900" width="800" height="800" stroke="powderblue"
stroke-width="50" stroke-dashoffset="35"
stroke-dasharray="50 50" id="glyph68" />
<!-- b -->
<rect x="100" y="-900" width="800" height="800" stroke="chartreuse"
stroke-width="50" stroke-dashoffset="35"
stroke-dasharray="context-value" id="glyph69" />
<!-- c -->
<rect x="100" y="-900" width="800" height="800" stroke="sienna"
stroke-width="50" stroke-dasharray="50 50"
stroke-dashoffset="context-value" id="glyph70" />
<!-- d -->
<rect x="100" y="-900" width="800" height="800" stroke="olivedrab"
stroke-width="context-value" stroke-dasharray="context-value"
stroke-dashoffset="context-value" id="glyph71" />
</svg>

After

Width:  |  Height:  |  Size: 900 B

View file

@ -0,0 +1,28 @@
<svg xmlns="http://www.w3.org/2000/svg">
<!--
SVG test glyphs for paint servers within SVG glyphs
e: tests that we can refer to paint servers within the SVG glyph doc
(i.e. fill="url(#grad)" works)
f: tests that stop-color="context-{fill,stroke}" uses the context fill/stroke
fallback color
-->
<defs>
<linearGradient id="grad">
<stop offset="0%" stop-color="papayawhip" />
<stop offset="100%" stop-color="plum" />
</linearGradient>
<linearGradient id="grad2">
<stop offset="0%" stop-color="context-fill" />
<stop offset="100%" stop-color="context-stroke" />
</linearGradient>
</defs>
<!-- char 'e' -->
<rect id="glyph72" x="250" y="-750" width="500" height="500"
fill="url(#grad)" />
<!-- char 'f' -->
<rect id="glyph73" x="250" y="-750" width="500" height="500"
fill="url(#grad2)" />
</svg>

After

Width:  |  Height:  |  Size: 880 B

View file

@ -0,0 +1,67 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!--
SVG test glyphs for transforms within SVG glyphs
'g': simple red square used as a reference
'h': a smaller square, with a transform that should make it match the 'g'
'i': similar, applying a transform to the referenced element
'j': has a large blue square that should be transformed such that it is
completely hidden by the red
'k': tests the accumulation of several transforms
'l': checks that a transform from outside the glyph element is NOT applied
'm', 'n', 'o', 'p': all render the same <rect> but only 'm' and 'n' should be
transformed; 'o' and 'p' should match 'q'
'q': the unscaled small square, reference for 'o' and 'p' above
-->
<defs>
<!-- this rect will need to be scaled 5x to match the reference glyph 'g' -->
<rect id="small" x="50" y="-150" width="100" height="100" fill="red" />
</defs>
<!-- char 'g' -->
<rect id="glyph74" x="250" y="-750" width="500" height="500" fill="red" />
<!-- char 'h' -->
<rect id="glyph75" x="25" y="-75" width="50" height="50" transform="scale(10)" fill="red" />
<!-- char 'i' -->
<g id="glyph76">
<use xlink:href="#small" transform="scale(5)" />
</g>
<!-- char 'j' -->
<g id="glyph77">
<g transform="translate(300,-300) scale(0.4)">
<rect x="0" y="-1000" width="1000" height="1000" fill="blue" />
</g>
<g transform="scale(5)">
<use xlink:href="#small" />
</g>
</g>
<!-- char 'k' -->
<g id="glyph78" transform="scale(0.5)">
<g transform="scale(0.5)">
<use xlink:href="#small" transform="scale(20)" />
</g>
</g>
<!-- char 'l' -->
<g transform="scale(2)">
<g id="glyph79">
<use xlink:href="#small" transform="scale(5)" />
</g>
</g>
<g id="glyph80"> <!-- char 'm' -->
<g id="glyph81" transform="scale(5)"> <!-- char 'n' -->
<g id="glyph82"> <!-- char 'o' -->
<use id="glyph83" xlink:href="#small" /> <!-- char 'p' -->
</g>
</g>
</g>
<!-- char 'q' -->
<use id="glyph84" xlink:href="#small" />
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

View file

@ -0,0 +1 @@
This is the text contained in the rubbish.ttf 'SVG ' table. It is obviously not XML, and should thus be ignored.

Binary file not shown.

Binary file not shown.