mirror of
https://github.com/exyte/Macaw.git
synced 2024-09-11 05:05:23 +03:00
Merge branch 'master'
Conflicts: Macaw.xcodeproj/project.pbxproj
This commit is contained in:
commit
f7783594a2
@ -522,6 +522,16 @@
|
||||
A74C822B2297D5350085A832 /* coords-trans-14-f-manual.reference in Resources */ = {isa = PBXBuildFile; fileRef = A74C82262297D5340085A832 /* coords-trans-14-f-manual.reference */; };
|
||||
A74C822C2297D5350085A832 /* coords-trans-10-f-manual.reference in Resources */ = {isa = PBXBuildFile; fileRef = A74C82272297D5340085A832 /* coords-trans-10-f-manual.reference */; };
|
||||
A74C822D2297D5350085A832 /* coords-trans-13-f-manual.reference in Resources */ = {isa = PBXBuildFile; fileRef = A74C82282297D5350085A832 /* coords-trans-13-f-manual.reference */; };
|
||||
A74C82322297D8B40085A832 /* shapes-rect-06-f-manual.svg in Resources */ = {isa = PBXBuildFile; fileRef = A74C822E2297D8B30085A832 /* shapes-rect-06-f-manual.svg */; };
|
||||
A74C82332297D8B40085A832 /* shapes-rect-02-t-manual.svg in Resources */ = {isa = PBXBuildFile; fileRef = A74C822F2297D8B30085A832 /* shapes-rect-02-t-manual.svg */; };
|
||||
A74C82342297D8B40085A832 /* shapes-rect-03-t-manual.svg in Resources */ = {isa = PBXBuildFile; fileRef = A74C82302297D8B30085A832 /* shapes-rect-03-t-manual.svg */; };
|
||||
A74C82352297D8B40085A832 /* shapes-rect-07-f-manual.svg in Resources */ = {isa = PBXBuildFile; fileRef = A74C82312297D8B40085A832 /* shapes-rect-07-f-manual.svg */; };
|
||||
A74C823C2297DB2C0085A832 /* shapes-rect-07-f-manual.reference in Resources */ = {isa = PBXBuildFile; fileRef = A74C82382297DB2B0085A832 /* shapes-rect-07-f-manual.reference */; };
|
||||
A74C823E2297DB2C0085A832 /* shapes-rect-03-t-manual.reference in Resources */ = {isa = PBXBuildFile; fileRef = A74C823A2297DB2B0085A832 /* shapes-rect-03-t-manual.reference */; };
|
||||
A74C823F2297DB2C0085A832 /* shapes-rect-06-f-manual.reference in Resources */ = {isa = PBXBuildFile; fileRef = A74C823B2297DB2B0085A832 /* shapes-rect-06-f-manual.reference */; };
|
||||
A74C82412297DC220085A832 /* shapes-rect-02-t-manual.reference in Resources */ = {isa = PBXBuildFile; fileRef = A74C82402297DC220085A832 /* shapes-rect-02-t-manual.reference */; };
|
||||
A74C82032296BE5F0085A832 /* paths-data-20-f-manual.svg in Resources */ = {isa = PBXBuildFile; fileRef = A74C82022296BE5F0085A832 /* paths-data-20-f-manual.svg */; };
|
||||
A74C82052296BFC60085A832 /* paths-data-20-f-manual.reference in Resources */ = {isa = PBXBuildFile; fileRef = A74C82042296BFC60085A832 /* paths-data-20-f-manual.reference */; };
|
||||
A7E675561EC4213500BD9ECB /* NodeBoundsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7E675551EC4213500BD9ECB /* NodeBoundsTests.swift */; };
|
||||
C410148E1F834D290022EE44 /* style.svg in Resources */ = {isa = PBXBuildFile; fileRef = C410148D1F834D280022EE44 /* style.svg */; };
|
||||
C4153A8F1F8793DE001BA5EE /* small-logo.png in Resources */ = {isa = PBXBuildFile; fileRef = C4153A8E1F8793DD001BA5EE /* small-logo.png */; };
|
||||
@ -951,6 +961,16 @@
|
||||
A74C82262297D5340085A832 /* coords-trans-14-f-manual.reference */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "coords-trans-14-f-manual.reference"; sourceTree = "<group>"; };
|
||||
A74C82272297D5340085A832 /* coords-trans-10-f-manual.reference */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "coords-trans-10-f-manual.reference"; sourceTree = "<group>"; };
|
||||
A74C82282297D5350085A832 /* coords-trans-13-f-manual.reference */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "coords-trans-13-f-manual.reference"; sourceTree = "<group>"; };
|
||||
A74C822E2297D8B30085A832 /* shapes-rect-06-f-manual.svg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "shapes-rect-06-f-manual.svg"; sourceTree = "<group>"; };
|
||||
A74C822F2297D8B30085A832 /* shapes-rect-02-t-manual.svg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "shapes-rect-02-t-manual.svg"; sourceTree = "<group>"; };
|
||||
A74C82302297D8B30085A832 /* shapes-rect-03-t-manual.svg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "shapes-rect-03-t-manual.svg"; sourceTree = "<group>"; };
|
||||
A74C82312297D8B40085A832 /* shapes-rect-07-f-manual.svg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "shapes-rect-07-f-manual.svg"; sourceTree = "<group>"; };
|
||||
A74C82382297DB2B0085A832 /* shapes-rect-07-f-manual.reference */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "shapes-rect-07-f-manual.reference"; sourceTree = "<group>"; };
|
||||
A74C823A2297DB2B0085A832 /* shapes-rect-03-t-manual.reference */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "shapes-rect-03-t-manual.reference"; sourceTree = "<group>"; };
|
||||
A74C823B2297DB2B0085A832 /* shapes-rect-06-f-manual.reference */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "shapes-rect-06-f-manual.reference"; sourceTree = "<group>"; };
|
||||
A74C82402297DC220085A832 /* shapes-rect-02-t-manual.reference */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "shapes-rect-02-t-manual.reference"; sourceTree = "<group>"; };
|
||||
A74C82022296BE5F0085A832 /* paths-data-20-f-manual.svg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "paths-data-20-f-manual.svg"; sourceTree = "<group>"; };
|
||||
A74C82042296BFC60085A832 /* paths-data-20-f-manual.reference */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "paths-data-20-f-manual.reference"; sourceTree = "<group>"; };
|
||||
A7E675551EC4213500BD9ECB /* NodeBoundsTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = NodeBoundsTests.swift; path = Bounds/NodeBoundsTests.swift; sourceTree = "<group>"; };
|
||||
C410148D1F834D280022EE44 /* style.svg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = style.svg; sourceTree = "<group>"; };
|
||||
C4153A8E1F8793DD001BA5EE /* small-logo.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "small-logo.png"; sourceTree = "<group>"; };
|
||||
@ -1522,6 +1542,8 @@
|
||||
5BFEF5D420BC1C1E008DAC11 /* paths-data-18-f-manual.svg */,
|
||||
5B1AE1D720B6A669007EECCB /* paths-data-19-f-manual.reference */,
|
||||
5B1AE21A20B6A669007EECCB /* paths-data-19-f-manual.svg */,
|
||||
A74C82022296BE5F0085A832 /* paths-data-20-f-manual.svg */,
|
||||
A74C82042296BFC60085A832 /* paths-data-20-f-manual.reference */,
|
||||
5B37139620BE95D7004BB6EE /* pservers-grad-01-b-manual.reference */,
|
||||
5B37139220BE95D6004BB6EE /* pservers-grad-01-b-manual.svg */,
|
||||
5B37139320BE95D6004BB6EE /* pservers-grad-02-b-manual.reference */,
|
||||
@ -1566,10 +1588,18 @@
|
||||
5B1AE1BA20B6A669007EECCB /* shapes-polyline-01-t-manual.svg */,
|
||||
5B1AE1AF20B6A669007EECCB /* shapes-polyline-02-t-manual.reference */,
|
||||
5B1AE1E120B6A669007EECCB /* shapes-polyline-02-t-manual.svg */,
|
||||
A74C82402297DC220085A832 /* shapes-rect-02-t-manual.reference */,
|
||||
A74C822F2297D8B30085A832 /* shapes-rect-02-t-manual.svg */,
|
||||
A74C823A2297DB2B0085A832 /* shapes-rect-03-t-manual.reference */,
|
||||
A74C82302297D8B30085A832 /* shapes-rect-03-t-manual.svg */,
|
||||
5B1AE22520B6A669007EECCB /* shapes-rect-04-f-manual.reference */,
|
||||
5B1AE1CE20B6A669007EECCB /* shapes-rect-04-f-manual.svg */,
|
||||
5B1AE19620B6A669007EECCB /* shapes-rect-05-f-manual.reference */,
|
||||
5B1AE1B720B6A669007EECCB /* shapes-rect-05-f-manual.svg */,
|
||||
A74C823B2297DB2B0085A832 /* shapes-rect-06-f-manual.reference */,
|
||||
A74C822E2297D8B30085A832 /* shapes-rect-06-f-manual.svg */,
|
||||
A74C82382297DB2B0085A832 /* shapes-rect-07-f-manual.reference */,
|
||||
A74C82312297D8B40085A832 /* shapes-rect-07-f-manual.svg */,
|
||||
5B1AE22220B6A669007EECCB /* struct-defs-01-t-manual.reference */,
|
||||
5B1AE22E20B6A669007EECCB /* struct-defs-01-t-manual.svg */,
|
||||
5B1AE19720B6A669007EECCB /* struct-frag-01-t-manual.reference */,
|
||||
@ -1800,6 +1830,7 @@
|
||||
5BAE203C208E163D006BF277 /* triangle.reference in Resources */,
|
||||
C4153A8F1F8793DE001BA5EE /* small-logo.png in Resources */,
|
||||
5BAE2048208E163D006BF277 /* line.reference in Resources */,
|
||||
A74C82322297D8B40085A832 /* shapes-rect-06-f-manual.svg in Resources */,
|
||||
5B1AE2A420B6A669007EECCB /* paths-data-12-t-manual.reference in Resources */,
|
||||
57CAB1361D7832E000FD8E47 /* triangle.svg in Resources */,
|
||||
5B7E79CF20CBE69700C50BCF /* masking-path-02-b-manual.svg in Resources */,
|
||||
@ -1821,6 +1852,7 @@
|
||||
5B1AE2B820B6A669007EECCB /* painting-stroke-03-t-manual.reference in Resources */,
|
||||
4269F43E2257265800D91393 /* color-prop-04-t-manual.reference in Resources */,
|
||||
5B1AE2C720B6A669007EECCB /* paths-data-02-t-manual.svg in Resources */,
|
||||
A74C823C2297DB2C0085A832 /* shapes-rect-07-f-manual.reference in Resources */,
|
||||
5B1AE27120B6A669007EECCB /* painting-stroke-04-t-manual.reference in Resources */,
|
||||
5B1AE2C220B6A669007EECCB /* coords-trans-05-t-manual.svg in Resources */,
|
||||
5B1AE29D20B6A669007EECCB /* types-basic-01-f-manual.reference in Resources */,
|
||||
@ -1840,6 +1872,7 @@
|
||||
5BAE2040208E163D006BF277 /* ellipse.reference in Resources */,
|
||||
5B1AE27E20B6A669007EECCB /* coords-transformattr-02-f-manual.reference in Resources */,
|
||||
5B1AE25720B6A669007EECCB /* coords-trans-07-t-manual.svg in Resources */,
|
||||
A74C823F2297DB2C0085A832 /* shapes-rect-06-f-manual.reference in Resources */,
|
||||
5B1AE2BC20B6A669007EECCB /* coords-coord-02-t-manual.svg in Resources */,
|
||||
5B1AE23520B6A669007EECCB /* shapes-line-02-f-manual.reference in Resources */,
|
||||
5B1AE2CD20B6A669007EECCB /* paths-data-10-t-manual.svg in Resources */,
|
||||
@ -1847,9 +1880,11 @@
|
||||
5B1AE29320B6A669007EECCB /* coords-trans-09-t-manual.svg in Resources */,
|
||||
5B1AE2DC20B6A669007EECCB /* struct-defs-01-t-manual.svg in Resources */,
|
||||
A74C821F2297D4810085A832 /* coords-trans-13-f-manual.svg in Resources */,
|
||||
A74C82052296BFC60085A832 /* paths-data-20-f-manual.reference in Resources */,
|
||||
5B1AE29020B6A669007EECCB /* painting-stroke-08-t-manual.svg in Resources */,
|
||||
5B1AE2A720B6A669007EECCB /* paths-data-09-t-manual.svg in Resources */,
|
||||
5B1AE2AB20B6A669007EECCB /* painting-stroke-08-t-manual.reference in Resources */,
|
||||
A74C82352297D8B40085A832 /* shapes-rect-07-f-manual.svg in Resources */,
|
||||
5B1AE2A520B6A669007EECCB /* coords-trans-02-t-manual.reference in Resources */,
|
||||
5B1AE23220B6A669007EECCB /* text-align-01-b-manual.svg in Resources */,
|
||||
5B1AE2B220B6A669007EECCB /* types-basic-01-f-manual.svg in Resources */,
|
||||
@ -1865,6 +1900,7 @@
|
||||
A74C822C2297D5350085A832 /* coords-trans-10-f-manual.reference in Resources */,
|
||||
5B1AE24520B6A669007EECCB /* struct-frag-01-t-manual.reference in Resources */,
|
||||
5B1AE25B20B6A669007EECCB /* painting-stroke-01-t-manual.svg in Resources */,
|
||||
A74C823E2297DB2C0085A832 /* shapes-rect-03-t-manual.reference in Resources */,
|
||||
5BAE2047208E163D006BF277 /* viewBox.reference in Resources */,
|
||||
5B1AE2C120B6A669007EECCB /* painting-stroke-04-t-manual.svg in Resources */,
|
||||
5B1AE2BE20B6A669007EECCB /* painting-stroke-03-t-manual.svg in Resources */,
|
||||
@ -1897,11 +1933,13 @@
|
||||
5B1AE2CF20B6A669007EECCB /* paths-data-07-t-manual.reference in Resources */,
|
||||
5B1AE28D20B6A669007EECCB /* shapes-circle-01-t-manual.reference in Resources */,
|
||||
5B1AE2A320B6A669007EECCB /* painting-fill-01-t-manual.svg in Resources */,
|
||||
A74C82332297D8B40085A832 /* shapes-rect-02-t-manual.svg in Resources */,
|
||||
5B1AE2CB20B6A669007EECCB /* painting-fill-02-t-manual.reference in Resources */,
|
||||
5B1AE26520B6A669007EECCB /* shapes-rect-05-f-manual.svg in Resources */,
|
||||
5B1AE2D120B6A669007EECCB /* paths-data-03-f-manual.reference in Resources */,
|
||||
5B1AE28920B6A669007EECCB /* shapes-intro-01-t-manual.reference in Resources */,
|
||||
5B1AE2C020B6A669007EECCB /* paths-data-14-t-manual.reference in Resources */,
|
||||
A74C82032296BE5F0085A832 /* paths-data-20-f-manual.svg in Resources */,
|
||||
5B1AE27420B6A669007EECCB /* color-prop-02-f-manual.svg in Resources */,
|
||||
5B1AE25120B6A669007EECCB /* coords-trans-05-t-manual.reference in Resources */,
|
||||
5B1AE29120B6A669007EECCB /* coords-transformattr-01-f-manual.svg in Resources */,
|
||||
@ -1922,6 +1960,7 @@
|
||||
5B1AE28220B6A669007EECCB /* coords-coord-01-t-manual.reference in Resources */,
|
||||
A74C81F32292B45E0085A832 /* color-prop-05-t-manual.reference in Resources */,
|
||||
5B1AE23420B6A669007EECCB /* painting-control-03-f-manual.reference in Resources */,
|
||||
A74C82342297D8B40085A832 /* shapes-rect-03-t-manual.svg in Resources */,
|
||||
5B1AE26820B6A669007EECCB /* shapes-polyline-01-t-manual.svg in Resources */,
|
||||
5B1AE29A20B6A669007EECCB /* struct-frag-02-t-manual.svg in Resources */,
|
||||
5B1AE2A620B6A669007EECCB /* text-fonts-01-t-manual.svg in Resources */,
|
||||
@ -1952,6 +1991,7 @@
|
||||
5B1AE26A20B6A669007EECCB /* painting-control-06-f-manual.reference in Resources */,
|
||||
C46E83551F94B20E00208037 /* transform.svg in Resources */,
|
||||
5B1AE2C420B6A669007EECCB /* painting-fill-01-t-manual.reference in Resources */,
|
||||
A74C82412297DC220085A832 /* shapes-rect-02-t-manual.reference in Resources */,
|
||||
5B1AE2AE20B6A669007EECCB /* shapes-circle-02-t-manual.reference in Resources */,
|
||||
5B1AE29520B6A669007EECCB /* shapes-ellipse-03-f-manual.reference in Resources */,
|
||||
5B1AE23820B6A669007EECCB /* color-prop-01-b-manual.svg in Resources */,
|
||||
|
@ -393,10 +393,30 @@ class MacawSVGTests: XCTestCase {
|
||||
validateJSON("painting-fill-03-t-manual")
|
||||
}
|
||||
|
||||
func testShapesRect02() {
|
||||
validateJSON("shapes-rect-02-t-manual")
|
||||
}
|
||||
|
||||
func testShapesRect03() {
|
||||
validateJSON("shapes-rect-03-t-manual")
|
||||
}
|
||||
|
||||
func testShapesRect04() {
|
||||
validateJSON("shapes-rect-04-f-manual")
|
||||
}
|
||||
|
||||
func testShapesRect05() {
|
||||
validateJSON("shapes-rect-05-f-manual")
|
||||
}
|
||||
|
||||
func testShapesRect06() {
|
||||
validateJSON("shapes-rect-06-f-manual")
|
||||
}
|
||||
|
||||
func testShapesRect07() {
|
||||
validateJSON("shapes-rect-07-f-manual")
|
||||
}
|
||||
|
||||
func testPaintingFill04() {
|
||||
validateJSON("painting-fill-04-t-manual")
|
||||
}
|
||||
@ -437,10 +457,6 @@ class MacawSVGTests: XCTestCase {
|
||||
validateJSON("painting-fill-02-t-manual")
|
||||
}
|
||||
|
||||
func testShapesRect04() {
|
||||
validateJSON("shapes-rect-04-f-manual")
|
||||
}
|
||||
|
||||
func testCoordsTransformattr03() {
|
||||
validateJSON("coords-transformattr-03-f-manual")
|
||||
}
|
||||
@ -557,6 +573,10 @@ class MacawSVGTests: XCTestCase {
|
||||
validateJSON("paths-data-19-f-manual")
|
||||
}
|
||||
|
||||
func testPathsData20() {
|
||||
validateJSON("paths-data-20-f-manual")
|
||||
}
|
||||
|
||||
func testStructGroup01() {
|
||||
validateJSON("struct-group-01-t-manual")
|
||||
}
|
||||
|
@ -10,12 +10,12 @@ There are [521 SVG tests](https://github.com/web-platform-tests/wpt/tree/master/
|
||||
* [switch/object](https://www.w3.org/TR/SVG11/backward.html) (7)
|
||||
|
||||
The rest 306 tests can be split into following categories:
|
||||
* 31.4% passed (96)
|
||||
* 31.7% passed (97)
|
||||
* 14.1% filters (43) [#390](https://github.com/exyte/Macaw/issues/390)
|
||||
* 7.8% images (24) [wpt issue](https://github.com/web-platform-tests/wpt/issues/11178)
|
||||
* 2.6% markers (8) [#392](https://github.com/exyte/Macaw/issues/392)
|
||||
* 19.9% text (61) [#391](https://github.com/exyte/Macaw/issues/391)
|
||||
* 24.5% blocked by issues (75)
|
||||
* 24.2% blocked by issues (75)
|
||||
|
||||
Status of each test:
|
||||
|
||||
@ -183,7 +183,7 @@ Status of each test:
|
||||
|[paths-data-17-f-manual](w3cSVGTests/paths-data-17-f-manual.svg) | ✅ |
|
||||
|[paths-data-18-f-manual](w3cSVGTests/paths-data-18-f-manual.svg) | ✅ |
|
||||
|[paths-data-19-f-manual](w3cSVGTests/paths-data-19-f-manual.svg) | ✅ |
|
||||
|[paths-data-20-f-manual](w3cSVGTests/paths-data-20-f-manual.svg) | [#395](https://github.com/exyte/Macaw/issues/395) |
|
||||
|[paths-data-20-f-manual](w3cSVGTests/paths-data-20-f-manual.svg) | ✅ |
|
||||
|[pservers-grad-01-b-manual](w3cSVGTests/pservers-grad-01-b-manual.svg) | ✅ |
|
||||
|[pservers-grad-02-b-manual](w3cSVGTests/pservers-grad-02-b-manual.svg) | ✅ |
|
||||
|[pservers-grad-03-b-manual](w3cSVGTests/pservers-grad-03-b-manual.svg) | ✅ |
|
||||
|
793
MacawTests/w3cSVGTests/paths-data-20-f-manual.reference
Normal file
793
MacawTests/w3cSVGTests/paths-data-20-f-manual.reference
Normal file
@ -0,0 +1,793 @@
|
||||
{
|
||||
"contents" : [
|
||||
{
|
||||
"contents" : [
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 16711680
|
||||
},
|
||||
"form" : {
|
||||
"segments" : [
|
||||
{
|
||||
"data" : [
|
||||
120,
|
||||
120
|
||||
],
|
||||
"type" : "M"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25
|
||||
],
|
||||
"type" : "h"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25,
|
||||
25,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
-25,
|
||||
25
|
||||
],
|
||||
"type" : "a"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
|
||||
],
|
||||
"type" : "z"
|
||||
}
|
||||
],
|
||||
"type" : "Path"
|
||||
},
|
||||
"node" : "Shape",
|
||||
"stroke" : {
|
||||
"cap" : "butt",
|
||||
"dashes" : [
|
||||
|
||||
],
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 65280
|
||||
},
|
||||
"join" : "miter",
|
||||
"width" : 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 65280
|
||||
},
|
||||
"form" : {
|
||||
"segments" : [
|
||||
{
|
||||
"data" : [
|
||||
120,
|
||||
120
|
||||
],
|
||||
"type" : "M"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25
|
||||
],
|
||||
"type" : "h"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25,
|
||||
25,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
-25,
|
||||
25
|
||||
],
|
||||
"type" : "a"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
|
||||
],
|
||||
"type" : "z"
|
||||
}
|
||||
],
|
||||
"type" : "Path"
|
||||
},
|
||||
"node" : "Shape"
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 16711680
|
||||
},
|
||||
"form" : {
|
||||
"segments" : [
|
||||
{
|
||||
"data" : [
|
||||
200,
|
||||
120
|
||||
],
|
||||
"type" : "M"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
-25
|
||||
],
|
||||
"type" : "h"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25,
|
||||
25,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
25,
|
||||
25
|
||||
],
|
||||
"type" : "a"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
|
||||
],
|
||||
"type" : "z"
|
||||
}
|
||||
],
|
||||
"type" : "Path"
|
||||
},
|
||||
"node" : "Shape",
|
||||
"stroke" : {
|
||||
"cap" : "butt",
|
||||
"dashes" : [
|
||||
|
||||
],
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 65280
|
||||
},
|
||||
"join" : "miter",
|
||||
"width" : 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 65280
|
||||
},
|
||||
"form" : {
|
||||
"segments" : [
|
||||
{
|
||||
"data" : [
|
||||
200,
|
||||
120
|
||||
],
|
||||
"type" : "M"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
-25
|
||||
],
|
||||
"type" : "h"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25,
|
||||
25,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
25,
|
||||
25
|
||||
],
|
||||
"type" : "a"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
|
||||
],
|
||||
"type" : "z"
|
||||
}
|
||||
],
|
||||
"type" : "Path"
|
||||
},
|
||||
"node" : "Shape"
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 65280
|
||||
},
|
||||
"form" : {
|
||||
"segments" : [
|
||||
{
|
||||
"data" : [
|
||||
280,
|
||||
120
|
||||
],
|
||||
"type" : "M"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25
|
||||
],
|
||||
"type" : "h"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25,
|
||||
25,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
-25,
|
||||
25
|
||||
],
|
||||
"type" : "a"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
|
||||
],
|
||||
"type" : "z"
|
||||
}
|
||||
],
|
||||
"type" : "Path"
|
||||
},
|
||||
"node" : "Shape",
|
||||
"stroke" : {
|
||||
"cap" : "butt",
|
||||
"dashes" : [
|
||||
|
||||
],
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 65280
|
||||
},
|
||||
"join" : "miter",
|
||||
"width" : 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 16711680
|
||||
},
|
||||
"form" : {
|
||||
"segments" : [
|
||||
{
|
||||
"data" : [
|
||||
280,
|
||||
120
|
||||
],
|
||||
"type" : "M"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25
|
||||
],
|
||||
"type" : "h"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
|
||||
],
|
||||
"type" : "z"
|
||||
}
|
||||
],
|
||||
"type" : "Path"
|
||||
},
|
||||
"node" : "Shape"
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 65280
|
||||
},
|
||||
"form" : {
|
||||
"segments" : [
|
||||
{
|
||||
"data" : [
|
||||
360,
|
||||
120
|
||||
],
|
||||
"type" : "M"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
-25
|
||||
],
|
||||
"type" : "h"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25,
|
||||
25,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
25,
|
||||
25
|
||||
],
|
||||
"type" : "a"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
|
||||
],
|
||||
"type" : "z"
|
||||
}
|
||||
],
|
||||
"type" : "Path"
|
||||
},
|
||||
"node" : "Shape",
|
||||
"stroke" : {
|
||||
"cap" : "butt",
|
||||
"dashes" : [
|
||||
|
||||
],
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 65280
|
||||
},
|
||||
"join" : "miter",
|
||||
"width" : 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 16711680
|
||||
},
|
||||
"form" : {
|
||||
"segments" : [
|
||||
{
|
||||
"data" : [
|
||||
360,
|
||||
120
|
||||
],
|
||||
"type" : "M"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
-25
|
||||
],
|
||||
"type" : "h"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
|
||||
],
|
||||
"type" : "z"
|
||||
}
|
||||
],
|
||||
"type" : "Path"
|
||||
},
|
||||
"node" : "Shape"
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 16711680
|
||||
},
|
||||
"form" : {
|
||||
"segments" : [
|
||||
{
|
||||
"data" : [
|
||||
120,
|
||||
200
|
||||
],
|
||||
"type" : "M"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25
|
||||
],
|
||||
"type" : "h"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25,
|
||||
25,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
-25,
|
||||
-25
|
||||
],
|
||||
"type" : "a"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
|
||||
],
|
||||
"type" : "z"
|
||||
}
|
||||
],
|
||||
"type" : "Path"
|
||||
},
|
||||
"node" : "Shape",
|
||||
"stroke" : {
|
||||
"cap" : "butt",
|
||||
"dashes" : [
|
||||
|
||||
],
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 65280
|
||||
},
|
||||
"join" : "miter",
|
||||
"width" : 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 65280
|
||||
},
|
||||
"form" : {
|
||||
"segments" : [
|
||||
{
|
||||
"data" : [
|
||||
120,
|
||||
200
|
||||
],
|
||||
"type" : "M"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25
|
||||
],
|
||||
"type" : "h"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25,
|
||||
25,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
-25,
|
||||
-25
|
||||
],
|
||||
"type" : "a"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
|
||||
],
|
||||
"type" : "z"
|
||||
}
|
||||
],
|
||||
"type" : "Path"
|
||||
},
|
||||
"node" : "Shape"
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 65280
|
||||
},
|
||||
"form" : {
|
||||
"segments" : [
|
||||
{
|
||||
"data" : [
|
||||
200,
|
||||
200
|
||||
],
|
||||
"type" : "M"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
-25
|
||||
],
|
||||
"type" : "h"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25,
|
||||
25,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
25,
|
||||
-25
|
||||
],
|
||||
"type" : "a"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
|
||||
],
|
||||
"type" : "z"
|
||||
}
|
||||
],
|
||||
"type" : "Path"
|
||||
},
|
||||
"node" : "Shape",
|
||||
"stroke" : {
|
||||
"cap" : "butt",
|
||||
"dashes" : [
|
||||
|
||||
],
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 65280
|
||||
},
|
||||
"join" : "miter",
|
||||
"width" : 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 16711680
|
||||
},
|
||||
"form" : {
|
||||
"segments" : [
|
||||
{
|
||||
"data" : [
|
||||
200,
|
||||
200
|
||||
],
|
||||
"type" : "M"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
-25
|
||||
],
|
||||
"type" : "h"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
|
||||
],
|
||||
"type" : "z"
|
||||
}
|
||||
],
|
||||
"type" : "Path"
|
||||
},
|
||||
"node" : "Shape"
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 65280
|
||||
},
|
||||
"form" : {
|
||||
"segments" : [
|
||||
{
|
||||
"data" : [
|
||||
280,
|
||||
200
|
||||
],
|
||||
"type" : "M"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25
|
||||
],
|
||||
"type" : "h"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25,
|
||||
25,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
-25,
|
||||
-25
|
||||
],
|
||||
"type" : "a"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
|
||||
],
|
||||
"type" : "z"
|
||||
}
|
||||
],
|
||||
"type" : "Path"
|
||||
},
|
||||
"node" : "Shape",
|
||||
"stroke" : {
|
||||
"cap" : "butt",
|
||||
"dashes" : [
|
||||
|
||||
],
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 65280
|
||||
},
|
||||
"join" : "miter",
|
||||
"width" : 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 16711680
|
||||
},
|
||||
"form" : {
|
||||
"segments" : [
|
||||
{
|
||||
"data" : [
|
||||
280,
|
||||
200
|
||||
],
|
||||
"type" : "M"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25
|
||||
],
|
||||
"type" : "h"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
|
||||
],
|
||||
"type" : "z"
|
||||
}
|
||||
],
|
||||
"type" : "Path"
|
||||
},
|
||||
"node" : "Shape"
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 65280
|
||||
},
|
||||
"form" : {
|
||||
"segments" : [
|
||||
{
|
||||
"data" : [
|
||||
360,
|
||||
200
|
||||
],
|
||||
"type" : "M"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
-25
|
||||
],
|
||||
"type" : "h"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
25,
|
||||
25,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
25,
|
||||
-25
|
||||
],
|
||||
"type" : "a"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
|
||||
],
|
||||
"type" : "z"
|
||||
}
|
||||
],
|
||||
"type" : "Path"
|
||||
},
|
||||
"node" : "Shape",
|
||||
"stroke" : {
|
||||
"cap" : "butt",
|
||||
"dashes" : [
|
||||
|
||||
],
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 65280
|
||||
},
|
||||
"join" : "miter",
|
||||
"width" : 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 16711680
|
||||
},
|
||||
"form" : {
|
||||
"segments" : [
|
||||
{
|
||||
"data" : [
|
||||
360,
|
||||
200
|
||||
],
|
||||
"type" : "M"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
-25
|
||||
],
|
||||
"type" : "h"
|
||||
},
|
||||
{
|
||||
"data" : [
|
||||
|
||||
],
|
||||
"type" : "z"
|
||||
}
|
||||
],
|
||||
"type" : "Path"
|
||||
},
|
||||
"node" : "Shape"
|
||||
}
|
||||
],
|
||||
"node" : "Group"
|
||||
},
|
||||
{
|
||||
"contents" : [
|
||||
{
|
||||
"align" : "min",
|
||||
"baseline" : "bottom",
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"font" : {
|
||||
"name" : "SVGFreeSansASCII,sans-serif",
|
||||
"size" : 32,
|
||||
"weight" : "normal"
|
||||
},
|
||||
"node" : "Text",
|
||||
"place" : "1, 0, 0, 1, 10, 340",
|
||||
"text" : "$Revision: 1.3 $"
|
||||
}
|
||||
],
|
||||
"node" : "Group"
|
||||
},
|
||||
{
|
||||
"form" : {
|
||||
"h" : 358,
|
||||
"type" : "Rect",
|
||||
"w" : 478,
|
||||
"x" : 1,
|
||||
"y" : 1
|
||||
},
|
||||
"node" : "Shape",
|
||||
"stroke" : {
|
||||
"cap" : "butt",
|
||||
"dashes" : [
|
||||
|
||||
],
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"join" : "miter",
|
||||
"width" : 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"layout" : {
|
||||
"scalingMode" : "meet",
|
||||
"svgSize" : {
|
||||
"height" : "100.0%",
|
||||
"width" : "100.0%"
|
||||
},
|
||||
"viewBox" : {
|
||||
"h" : 360,
|
||||
"type" : "Rect",
|
||||
"w" : 480,
|
||||
"x" : 0,
|
||||
"y" : 0
|
||||
},
|
||||
"xAligningMode" : "mid",
|
||||
"yAligningMode" : "mid"
|
||||
},
|
||||
"node" : "Canvas"
|
||||
}
|
87
MacawTests/w3cSVGTests/paths-data-20-f-manual.svg
Normal file
87
MacawTests/w3cSVGTests/paths-data-20-f-manual.svg
Normal file
@ -0,0 +1,87 @@
|
||||
<svg id="svg-root" width="100%" height="100%"
|
||||
viewBox="0 0 480 360" xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<!--======================================================================-->
|
||||
<!--= Copyright 2008 World Wide Web Consortium, (Massachusetts =-->
|
||||
<!--= Institute of Technology, European Research Consortium for =-->
|
||||
<!--= Informatics and Mathematics (ERCIM), Keio University). =-->
|
||||
<!--= All Rights Reserved. =-->
|
||||
<!--= See http://www.w3.org/Consortium/Legal/. =-->
|
||||
<!--======================================================================-->
|
||||
<d:SVGTestCase xmlns:d="http://www.w3.org/2000/02/svg/testsuite/description/"
|
||||
template-version="1.4" reviewer="CL" author="ED" status="accepted"
|
||||
version="$Revision: 1.3 $" testname="$RCSfile: paths-data-20-f.svg,v $">
|
||||
<d:testDescription xmlns="http://www.w3.org/1999/xhtml" href="http://www.w3.org/TR/SVG11/paths.html#PathDataEllipticalArcCommands">
|
||||
<p>
|
||||
Tests parsing of the elliptical arc path syntax.
|
||||
</p>
|
||||
</d:testDescription>
|
||||
<d:operatorScript xmlns="http://www.w3.org/1999/xhtml">
|
||||
<p>
|
||||
Run the test. No interaction required.
|
||||
</p>
|
||||
</d:operatorScript>
|
||||
<d:passCriteria xmlns="http://www.w3.org/1999/xhtml">
|
||||
<p>
|
||||
The test has passed if the image looks as if there are eight green circles that have
|
||||
two white rectangles overlapping them, like in the reference image. If any red is visible
|
||||
the test has failed.
|
||||
</p>
|
||||
</d:passCriteria>
|
||||
</d:SVGTestCase>
|
||||
<title id="test-title">$RCSfile: paths-data-20-f.svg,v $</title>
|
||||
<defs>
|
||||
<font-face
|
||||
font-family="SVGFreeSansASCII"
|
||||
unicode-range="U+0-7F">
|
||||
<font-face-src>
|
||||
<font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/>
|
||||
</font-face-src>
|
||||
</font-face>
|
||||
</defs>
|
||||
<g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
|
||||
|
||||
<!-- no commawsp between arc flags -->
|
||||
<path d="M120,120 h25 a25,25 0 1,0 -25,25 z" fill="red" stroke="lime"/>
|
||||
<path d="M120,120 h25 a25,25 0 10 -25,25z" fill="lime"/>
|
||||
|
||||
<!-- no commawsp between arc flags and no commawsp after arc flags -->
|
||||
<path d="M200,120 h-25 a25,25 0 1,1 25,25 z" fill="red" stroke="lime"/>
|
||||
<path d="M200,120 h-25 a25,25 0 1125,25 z" fill="lime"/>
|
||||
|
||||
<!-- out of range large-arc-flag value -->
|
||||
<path d="M280,120 h25 a25,25 0 1,0 -25,25 z" fill="lime" stroke="lime"/>
|
||||
<path d="M280,120 h25 a25,25 0 6 0 -25,25 z" fill="red"/>
|
||||
|
||||
<!-- negative sweep-flag value -->
|
||||
<path d="M360,120 h-25 a25,25 0 1,1 25,25 z" fill="lime" stroke="lime"/>
|
||||
<path d="M360,120 h-25 a25,25 0 1 -1 25,25 z" fill="red"/>
|
||||
|
||||
<!-- no commawsp between sweep-flag and following coordinate-pair -->
|
||||
<path d="M120,200 h25 a25,25 0 1,1 -25,-25 z" fill="red" stroke="lime"/>
|
||||
<path d="M120,200 h25 a25,25 0 1 1-25,-25 z" fill="lime"/>
|
||||
|
||||
<!-- no commawsp before arc flags -->
|
||||
<path d="M200,200 h-25 a25,25 0 1,0 25,-25 z" fill="lime" stroke="lime"/>
|
||||
<path d="M200,200 h-25 a25,2501 025,-25 z" fill="red"/>
|
||||
|
||||
<!-- out of range sweep-flag value -->
|
||||
<path d="M280,200 h25 a25,25 0 1,1 -25,-25 z" fill="lime" stroke="lime"/>
|
||||
<path d="M280,200 h25 a25 25 0 1 7 -25 -25 z" fill="red"/>
|
||||
|
||||
<!-- negative large-arc-flag value -->
|
||||
<path d="M360,200 h-25 a25,25 0 1,0 25,-25 z" fill="lime" stroke="lime"/>
|
||||
<path d="M360,200 h-25 a25,25 0 -1 0 25,-25 z" fill="red"/>
|
||||
</g>
|
||||
<g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
|
||||
<text id="revision" x="10" y="340" stroke="none"
|
||||
fill="black">$Revision: 1.3 $</text>
|
||||
</g>
|
||||
<rect id="test-frame" x="1" y="1" width="478" height="358" fill="none" stroke="#000"/>
|
||||
<!-- comment out this watermark once the test is approved
|
||||
<g id="draft-watermark">
|
||||
<rect x="1" y="1" width="478" height="20" fill="red" stroke="black" stroke-width="1"/>
|
||||
<text font-family="SVGFreeSansASCII,sans-serif" font-weight="bold" font-size="20" x="240"
|
||||
text-anchor="middle" y="18" stroke-width="0.5" stroke="black" fill="white">DRAFT</text>
|
||||
</g> -->
|
||||
</svg>
|
After Width: | Height: | Size: 4.1 KiB |
188
MacawTests/w3cSVGTests/shapes-rect-02-t-manual.reference
Normal file
188
MacawTests/w3cSVGTests/shapes-rect-02-t-manual.reference
Normal file
@ -0,0 +1,188 @@
|
||||
{
|
||||
"contents" : [
|
||||
{
|
||||
"contents" : [
|
||||
{
|
||||
"contents" : [
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 32768
|
||||
},
|
||||
"form" : {
|
||||
"h" : 80,
|
||||
"type" : "Rect",
|
||||
"w" : 50,
|
||||
"x" : 0,
|
||||
"y" : 46
|
||||
},
|
||||
"node" : "Shape",
|
||||
"stroke" : {
|
||||
"cap" : "butt",
|
||||
"dashes" : [
|
||||
|
||||
],
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"join" : "miter",
|
||||
"width" : 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 32768
|
||||
},
|
||||
"form" : {
|
||||
"h" : 80,
|
||||
"type" : "Rect",
|
||||
"w" : 50,
|
||||
"x" : 130,
|
||||
"y" : 0
|
||||
},
|
||||
"node" : "Shape",
|
||||
"stroke" : {
|
||||
"cap" : "butt",
|
||||
"dashes" : [
|
||||
|
||||
],
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"join" : "miter",
|
||||
"width" : 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 32768
|
||||
},
|
||||
"form" : {
|
||||
"rect" : {
|
||||
"h" : 80,
|
||||
"type" : "Rect",
|
||||
"w" : 50,
|
||||
"x" : 30,
|
||||
"y" : 196
|
||||
},
|
||||
"rx" : 20,
|
||||
"ry" : 20,
|
||||
"type" : "RoundRect"
|
||||
},
|
||||
"node" : "Shape",
|
||||
"stroke" : {
|
||||
"cap" : "butt",
|
||||
"dashes" : [
|
||||
|
||||
],
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"join" : "miter",
|
||||
"width" : 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 32768
|
||||
},
|
||||
"form" : {
|
||||
"rect" : {
|
||||
"h" : 80,
|
||||
"type" : "Rect",
|
||||
"w" : 50,
|
||||
"x" : 130,
|
||||
"y" : 196
|
||||
},
|
||||
"rx" : 20,
|
||||
"ry" : 20,
|
||||
"type" : "RoundRect"
|
||||
},
|
||||
"node" : "Shape",
|
||||
"stroke" : {
|
||||
"cap" : "butt",
|
||||
"dashes" : [
|
||||
|
||||
],
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"join" : "miter",
|
||||
"width" : 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"node" : "Group"
|
||||
}
|
||||
],
|
||||
"node" : "Group"
|
||||
},
|
||||
{
|
||||
"contents" : [
|
||||
{
|
||||
"align" : "min",
|
||||
"baseline" : "bottom",
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"font" : {
|
||||
"name" : "SVGFreeSansASCII,sans-serif",
|
||||
"size" : 32,
|
||||
"weight" : "normal"
|
||||
},
|
||||
"node" : "Text",
|
||||
"place" : "1, 0, 0, 1, 10, 340",
|
||||
"text" : "$Revision: 1.5 $"
|
||||
}
|
||||
],
|
||||
"node" : "Group"
|
||||
},
|
||||
{
|
||||
"form" : {
|
||||
"h" : 358,
|
||||
"type" : "Rect",
|
||||
"w" : 478,
|
||||
"x" : 1,
|
||||
"y" : 1
|
||||
},
|
||||
"node" : "Shape",
|
||||
"stroke" : {
|
||||
"cap" : "butt",
|
||||
"dashes" : [
|
||||
|
||||
],
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"join" : "miter",
|
||||
"width" : 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"layout" : {
|
||||
"scalingMode" : "meet",
|
||||
"svgSize" : {
|
||||
"height" : "100.0%",
|
||||
"width" : "100.0%"
|
||||
},
|
||||
"viewBox" : {
|
||||
"h" : 360,
|
||||
"type" : "Rect",
|
||||
"w" : 480,
|
||||
"x" : 0,
|
||||
"y" : 0
|
||||
},
|
||||
"xAligningMode" : "mid",
|
||||
"yAligningMode" : "mid"
|
||||
},
|
||||
"node" : "Canvas"
|
||||
}
|
71
MacawTests/w3cSVGTests/shapes-rect-02-t-manual.svg
Normal file
71
MacawTests/w3cSVGTests/shapes-rect-02-t-manual.svg
Normal file
@ -0,0 +1,71 @@
|
||||
<svg version="1.1" baseProfile="tiny" id="svg-root"
|
||||
width="100%" height="100%" viewBox="0 0 480 360"
|
||||
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<!--======================================================================-->
|
||||
<!--= SVG 1.1 2nd Edition Test Case =-->
|
||||
<!--======================================================================-->
|
||||
<!--= Copyright 2009 World Wide Web Consortium, (Massachusetts =-->
|
||||
<!--= Institute of Technology, European Research Consortium for =-->
|
||||
<!--= Informatics and Mathematics (ERCIM), Keio University). =-->
|
||||
<!--= All Rights Reserved. =-->
|
||||
<!--= See http://www.w3.org/Consortium/Legal/. =-->
|
||||
<!--======================================================================-->
|
||||
<d:SVGTestCase xmlns:d="http://www.w3.org/2000/02/svg/testsuite/description/"
|
||||
template-version="1.4" reviewer="DJ" author="CN" status="accepted"
|
||||
version="$Revision: 1.5 $" testname="$RCSfile: shapes-rect-02-t.svg,v $">
|
||||
<d:testDescription xmlns="http://www.w3.org/1999/xhtml" href="http://www.w3.org/TR/SVG11/shapes.html#RectElement">
|
||||
<p>
|
||||
Test x, y, width, height, rx and ry default/lacuna values on a rect element.
|
||||
</p>
|
||||
</d:testDescription>
|
||||
<d:operatorScript xmlns="http://www.w3.org/1999/xhtml">
|
||||
<p>
|
||||
Run the test. No interaction required.
|
||||
</p>
|
||||
</d:operatorScript>
|
||||
<d:passCriteria xmlns="http://www.w3.org/1999/xhtml">
|
||||
<p>
|
||||
There should be four green rectangles visible, two of them should have rounded corners.
|
||||
</p>
|
||||
</d:passCriteria>
|
||||
</d:SVGTestCase>
|
||||
<title id="test-title">$RCSfile: shapes-rect-02-t.svg,v $</title>
|
||||
<defs>
|
||||
<font-face font-family="SVGFreeSansASCII" unicode-range="U+0-7F">
|
||||
<font-face-src>
|
||||
<font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/>
|
||||
</font-face-src>
|
||||
</font-face>
|
||||
</defs>
|
||||
<g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
|
||||
<g fill="green" stroke="#000000">
|
||||
<!-- Set x coordinate to default. -->
|
||||
<rect y="46" width="50" height="80"/>
|
||||
|
||||
<!-- Set y coordinate to default. -->
|
||||
<rect x="130" width="50" height="80"/>
|
||||
|
||||
<!-- Set width to default. -->
|
||||
<rect x="250" y="46" height="80" width="0"/>
|
||||
|
||||
<!-- Set height to default. -->
|
||||
<rect x="350" y="46" height="0" width="50"/>
|
||||
|
||||
<!-- Set rx to default. -->
|
||||
<rect x="30" y="196" width="50" height="80" ry="20"/>
|
||||
|
||||
<!-- Set ry to default. -->
|
||||
<rect x="130" y="196" width="50" height="80" rx="20"/>
|
||||
</g>
|
||||
</g>
|
||||
<g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
|
||||
<text id="revision" x="10" y="340" stroke="none" fill="black">$Revision: 1.5 $</text>
|
||||
</g>
|
||||
<rect id="test-frame" x="1" y="1" width="478" height="358" fill="none" stroke="#000000"/>
|
||||
<!-- comment out this watermark once the test is approved -->
|
||||
<!--<g id="draft-watermark">
|
||||
<rect x="1" y="1" width="478" height="20" fill="red" stroke="black" stroke-width="1"/>
|
||||
<text font-family="SVGFreeSansASCII,sans-serif" font-weight="bold" font-size="20" x="240"
|
||||
text-anchor="middle" y="18" stroke-width="0.5" stroke="black" fill="white">DRAFT</text>
|
||||
</g>-->
|
||||
</svg>
|
After Width: | Height: | Size: 3.3 KiB |
1629
MacawTests/w3cSVGTests/shapes-rect-03-t-manual.reference
Normal file
1629
MacawTests/w3cSVGTests/shapes-rect-03-t-manual.reference
Normal file
File diff suppressed because it is too large
Load Diff
139
MacawTests/w3cSVGTests/shapes-rect-03-t-manual.svg
Normal file
139
MacawTests/w3cSVGTests/shapes-rect-03-t-manual.svg
Normal file
@ -0,0 +1,139 @@
|
||||
<svg id="svg-root" width="100%" height="100%"
|
||||
viewBox="0 0 480 360" xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<!--======================================================================-->
|
||||
<!--= Copyright 2008 World Wide Web Consortium, (Massachusetts =-->
|
||||
<!--= Institute of Technology, European Research Consortium for =-->
|
||||
<!--= Informatics and Mathematics (ERCIM), Keio University). =-->
|
||||
<!--= All Rights Reserved. =-->
|
||||
<!--= See http://www.w3.org/Consortium/Legal/. =-->
|
||||
<!--======================================================================-->
|
||||
<d:SVGTestCase xmlns:d="http://www.w3.org/2000/02/svg/testsuite/description/"
|
||||
template-version="1.4" reviewer="CM" author="ED" status="accepted"
|
||||
version="$Revision: 1.9 $" testname="$RCSfile: shapes-rect-03-t.svg,v $">
|
||||
<d:testDescription xmlns="http://www.w3.org/1999/xhtml" href="http://www.w3.org/TR/SVG11/shapes.html#RectElement">
|
||||
<p>
|
||||
Tests rx and ry clamping and aliasing.
|
||||
</p>
|
||||
</d:testDescription>
|
||||
<d:operatorScript xmlns="http://www.w3.org/1999/xhtml">
|
||||
<p>
|
||||
Run the test. No interaction required.
|
||||
</p>
|
||||
</d:operatorScript>
|
||||
<d:passCriteria xmlns="http://www.w3.org/1999/xhtml">
|
||||
<p>
|
||||
The test has passed if:
|
||||
</p>
|
||||
<ul>
|
||||
<li>There is no red visible</li>
|
||||
<li>There is no green outside the black borders of each rectangle</li>
|
||||
</ul>
|
||||
</d:passCriteria>
|
||||
</d:SVGTestCase>
|
||||
<title id="test-title">$RCSfile: shapes-rect-03-t.svg,v $</title>
|
||||
<defs>
|
||||
<font-face
|
||||
font-family="SVGFreeSansASCII"
|
||||
unicode-range="U+0-7F">
|
||||
<font-face-src>
|
||||
<font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/>
|
||||
</font-face-src>
|
||||
</font-face>
|
||||
</defs>
|
||||
<g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
|
||||
|
||||
<g transform="translate(0, 30)">
|
||||
<g fill="red">
|
||||
<g id="references">
|
||||
<rect x="100" width="20" height="100" rx="50" ry="20"/>
|
||||
<rect x="130" width="20" height="100" rx="10" ry="20"/>
|
||||
<rect x="160" width="20" height="100" rx="10" ry="20"/>
|
||||
|
||||
<rect x="190" width="20" height="100" rx="10" ry="50"/>
|
||||
<rect x="220" width="20" height="100" rx="10" ry="20"/>
|
||||
<rect x="250" width="20" height="100" rx="10" ry="10"/>
|
||||
|
||||
<rect x="280" width="20" height="100" rx="5" ry="5"/>
|
||||
<rect x="310" width="20" height="100" rx="0" ry="0"/>
|
||||
<rect x="340" width="20" height="100" rx="0" ry="0"/>
|
||||
|
||||
<g transform="translate(45,0)">
|
||||
<rect x="10" y="120" width="100" height="20" rx="50" ry="10"/>
|
||||
<rect x="10" y="150" width="100" height="20" rx="15" ry="10"/>
|
||||
<rect x="10" y="180" width="100" height="20" rx="10" ry="10"/>
|
||||
|
||||
<rect x="130" y="120" width="100" height="20" rx="50" ry="10"/>
|
||||
<rect x="130" y="150" width="100" height="20" rx="20" ry="10"/>
|
||||
<rect x="130" y="180" width="100" height="20" rx="10" ry="10"/>
|
||||
|
||||
<rect x="250" y="120" width="100" height="20" rx="5" ry="5"/>
|
||||
<rect x="250" y="150" width="100" height="20" rx="0" ry="0"/>
|
||||
<rect x="250" y="180" width="100" height="20" rx="0" ry="0"/>
|
||||
</g>
|
||||
|
||||
<g transform="translate(100,100)">
|
||||
<rect x="10" y="120" width="50" height="20" rx="25" ry="10"/>
|
||||
<rect x="80" y="120" width="20" height="50" rx="10" ry="25"/>
|
||||
|
||||
<rect x="120" y="120" width="50" height="20" rx="25" ry="10"/>
|
||||
|
||||
<rect stroke-width="0.5" width="20" height="30" rx="10" ry="15" transform="translate(-10 -15) scale(2) translate(10 15) translate(85 52.5)"/>
|
||||
<rect x="230" y="120" width="20" height="30" rx="10" ry="25"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g id="tests" fill="lime">
|
||||
<rect x="100" width="20" height="100" rx="50" ry="20"/>
|
||||
<rect x="130" width="20" height="100" rx="15" ry="20"/>
|
||||
<rect x="160" width="20" height="100" rx="10" ry="20"/>
|
||||
|
||||
<rect x="190" width="20" height="100" rx="80"/>
|
||||
<rect x="220" width="20" height="100" rx="20"/>
|
||||
<rect x="250" width="20" height="100" rx="10"/>
|
||||
|
||||
<rect x="280" width="20" height="100" rx="5"/>
|
||||
<rect x="310" width="20" height="100" rx="0"/>
|
||||
<rect x="340" width="20" height="100" rx="0" ry="0"/>
|
||||
|
||||
<g transform="translate(45,0)">
|
||||
<rect x="10" y="120" width="100" height="20" rx="50" ry="20"/>
|
||||
<rect x="10" y="150" width="100" height="20" rx="15" ry="20"/>
|
||||
<rect x="10" y="180" width="100" height="20" rx="10" ry="20"/>
|
||||
|
||||
<rect x="130" y="120" width="100" height="20" ry="50"/>
|
||||
<rect x="130" y="150" width="100" height="20" ry="20"/>
|
||||
<rect x="130" y="180" width="100" height="20" ry="10"/>
|
||||
|
||||
<rect x="250" y="120" width="100" height="20" ry="5"/>
|
||||
<rect x="250" y="150" width="100" height="20" ry="0"/>
|
||||
<rect x="250" y="180" width="100" height="20" rx="0" ry="0"/>
|
||||
</g>
|
||||
|
||||
<g transform="translate(100,100)">
|
||||
<rect x="10" y="120" width="50" height="20" rx="50"/>
|
||||
<rect x="80" y="120" width="20" height="50" ry="50"/>
|
||||
|
||||
<rect x="120" y="120" width="50" height="20" rx="200" ry="200"/>
|
||||
|
||||
<rect width="20" height="30" rx="50" transform="translate(-10 -15) scale(2) translate(10 15) translate(85 52.5)"/>
|
||||
<rect x="230" y="120" width="20" height="30" ry="50"/>
|
||||
</g>
|
||||
</g>
|
||||
|
||||
<use xlink:href="#references" fill="none" stroke="black"/>
|
||||
|
||||
</g>
|
||||
</g>
|
||||
<g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
|
||||
<text id="revision" x="10" y="340" stroke="none"
|
||||
fill="black">$Revision: 1.9 $</text>
|
||||
</g>
|
||||
<rect xml:id="test-frame" x="1" y="1" width="478" height="358" fill="none" stroke="#000"/>
|
||||
<!-- comment out this watermark once the test is approved
|
||||
<g id="draft-watermark">
|
||||
<rect x="1" y="1" width="478" height="20" fill="red" stroke="black" stroke-width="1"/>
|
||||
<text font-family="SVGFreeSansASCII,sans-serif" font-weight="bold" font-size="20" x="240"
|
||||
text-anchor="middle" y="18" stroke-width="0.5" stroke="black" fill="white">DRAFT</text>
|
||||
</g>-->
|
||||
</svg>
|
After Width: | Height: | Size: 6.2 KiB |
221
MacawTests/w3cSVGTests/shapes-rect-06-f-manual.reference
Normal file
221
MacawTests/w3cSVGTests/shapes-rect-06-f-manual.reference
Normal file
@ -0,0 +1,221 @@
|
||||
{
|
||||
"contents" : [
|
||||
{
|
||||
"contents" : [
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 16711680
|
||||
},
|
||||
"form" : {
|
||||
"rect" : {
|
||||
"h" : 100,
|
||||
"type" : "Rect",
|
||||
"w" : 200,
|
||||
"x" : 25,
|
||||
"y" : 50
|
||||
},
|
||||
"rx" : 100,
|
||||
"ry" : 50,
|
||||
"type" : "RoundRect"
|
||||
},
|
||||
"node" : "Shape"
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"form" : {
|
||||
"rect" : {
|
||||
"h" : 100,
|
||||
"type" : "Rect",
|
||||
"w" : 200,
|
||||
"x" : 25,
|
||||
"y" : 50
|
||||
},
|
||||
"rx" : 150,
|
||||
"ry" : 50,
|
||||
"type" : "RoundRect"
|
||||
},
|
||||
"node" : "Shape"
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 16711680
|
||||
},
|
||||
"form" : {
|
||||
"rect" : {
|
||||
"h" : 100,
|
||||
"type" : "Rect",
|
||||
"w" : 200,
|
||||
"x" : 25,
|
||||
"y" : 200
|
||||
},
|
||||
"rx" : 150,
|
||||
"ry" : 50,
|
||||
"type" : "RoundRect"
|
||||
},
|
||||
"node" : "Shape"
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"form" : {
|
||||
"rect" : {
|
||||
"h" : 100,
|
||||
"type" : "Rect",
|
||||
"w" : 200,
|
||||
"x" : 25,
|
||||
"y" : 200
|
||||
},
|
||||
"rx" : 100,
|
||||
"ry" : 50,
|
||||
"type" : "RoundRect"
|
||||
},
|
||||
"node" : "Shape"
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 16711680
|
||||
},
|
||||
"form" : {
|
||||
"rect" : {
|
||||
"h" : 100,
|
||||
"type" : "Rect",
|
||||
"w" : 200,
|
||||
"x" : 275,
|
||||
"y" : 50
|
||||
},
|
||||
"rx" : 100,
|
||||
"ry" : 50,
|
||||
"type" : "RoundRect"
|
||||
},
|
||||
"node" : "Shape"
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"form" : {
|
||||
"rect" : {
|
||||
"h" : 100,
|
||||
"type" : "Rect",
|
||||
"w" : 200,
|
||||
"x" : 275,
|
||||
"y" : 50
|
||||
},
|
||||
"rx" : 100,
|
||||
"ry" : 75,
|
||||
"type" : "RoundRect"
|
||||
},
|
||||
"node" : "Shape"
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 16711680
|
||||
},
|
||||
"form" : {
|
||||
"rect" : {
|
||||
"h" : 100,
|
||||
"type" : "Rect",
|
||||
"w" : 200,
|
||||
"x" : 275,
|
||||
"y" : 200
|
||||
},
|
||||
"rx" : 100,
|
||||
"ry" : 75,
|
||||
"type" : "RoundRect"
|
||||
},
|
||||
"node" : "Shape"
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"form" : {
|
||||
"rect" : {
|
||||
"h" : 100,
|
||||
"type" : "Rect",
|
||||
"w" : 200,
|
||||
"x" : 275,
|
||||
"y" : 200
|
||||
},
|
||||
"rx" : 100,
|
||||
"ry" : 50,
|
||||
"type" : "RoundRect"
|
||||
},
|
||||
"node" : "Shape"
|
||||
}
|
||||
],
|
||||
"node" : "Group"
|
||||
},
|
||||
{
|
||||
"contents" : [
|
||||
{
|
||||
"align" : "min",
|
||||
"baseline" : "bottom",
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"font" : {
|
||||
"name" : "SVGFreeSansASCII,sans-serif",
|
||||
"size" : 32,
|
||||
"weight" : "normal"
|
||||
},
|
||||
"node" : "Text",
|
||||
"place" : "1, 0, 0, 1, 10, 340",
|
||||
"text" : "$Revision: 1.3 $"
|
||||
}
|
||||
],
|
||||
"node" : "Group"
|
||||
},
|
||||
{
|
||||
"form" : {
|
||||
"h" : 358,
|
||||
"type" : "Rect",
|
||||
"w" : 478,
|
||||
"x" : 1,
|
||||
"y" : 1
|
||||
},
|
||||
"node" : "Shape",
|
||||
"stroke" : {
|
||||
"cap" : "butt",
|
||||
"dashes" : [
|
||||
|
||||
],
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"join" : "miter",
|
||||
"width" : 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"layout" : {
|
||||
"scalingMode" : "meet",
|
||||
"svgSize" : {
|
||||
"height" : "100.0%",
|
||||
"width" : "100.0%"
|
||||
},
|
||||
"viewBox" : {
|
||||
"h" : 360,
|
||||
"type" : "Rect",
|
||||
"w" : 480,
|
||||
"x" : 0,
|
||||
"y" : 0
|
||||
},
|
||||
"xAligningMode" : "mid",
|
||||
"yAligningMode" : "mid"
|
||||
},
|
||||
"node" : "Canvas"
|
||||
}
|
70
MacawTests/w3cSVGTests/shapes-rect-06-f-manual.svg
Normal file
70
MacawTests/w3cSVGTests/shapes-rect-06-f-manual.svg
Normal file
@ -0,0 +1,70 @@
|
||||
<svg id="svg-root" width="100%" height="100%"
|
||||
viewBox="0 0 480 360" xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<!--======================================================================-->
|
||||
<!--= Copyright 2008 World Wide Web Consortium, (Massachusetts =-->
|
||||
<!--= Institute of Technology, European Research Consortium for =-->
|
||||
<!--= Informatics and Mathematics (ERCIM), Keio University). =-->
|
||||
<!--= All Rights Reserved. =-->
|
||||
<!--= See http://www.w3.org/Consortium/Legal/. =-->
|
||||
<!--======================================================================-->
|
||||
<d:SVGTestCase xmlns:d="http://www.w3.org/2000/02/svg/testsuite/description/"
|
||||
template-version="1.4" reviewer="CL" author="Microsoft" status="accepted"
|
||||
version="$Revision: 1.3 $" testname="$RCSfile: shapes-rect-06-f.svg,v $">
|
||||
<d:testDescription xmlns="http://www.w3.org/1999/xhtml" href="http://www.w3.org/TR/SVG11/shapes.html#RectElement">
|
||||
<p>
|
||||
When 'rect' attributes 'rx' and 'ry' have a value greater than half of the width/height of the rectangle, they are treated as half the width/height of the rectangle.
|
||||
</p>
|
||||
<p>
|
||||
The test creates one 'rect' element with 'rx' greater than 1/2 the 'rect' width. Underneath that element, it creates a red 'rect' element with
|
||||
'rx' set to 1/2 the width. Repeats with 'ry' attribute.
|
||||
</p>
|
||||
</d:testDescription>
|
||||
<d:operatorScript xmlns="http://www.w3.org/1999/xhtml">
|
||||
<p>
|
||||
Run the test. No interaction required.
|
||||
</p>
|
||||
</d:operatorScript>
|
||||
<d:passCriteria xmlns="http://www.w3.org/1999/xhtml">
|
||||
<p>
|
||||
Test passes if there is no red visible on the page.
|
||||
</p>
|
||||
</d:passCriteria>
|
||||
</d:SVGTestCase>
|
||||
<title id="test-title">$RCSfile: shapes-rect-06-f.svg,v $</title>
|
||||
<defs>
|
||||
<font-face
|
||||
font-family="SVGFreeSansASCII"
|
||||
unicode-range="U+0-7F">
|
||||
<font-face-src>
|
||||
<font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/>
|
||||
</font-face-src>
|
||||
</font-face>
|
||||
</defs>
|
||||
<g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
|
||||
|
||||
<rect x="25" y="50" width="200" height="100" rx="100" ry="50" fill="red" />
|
||||
<rect x="25" y="50" width="200" height="100" rx="150" ry="50" fill="black" />
|
||||
<rect x="25" y="200" width="200" height="100" rx="150" ry="50" fill="red" />
|
||||
<rect x="25" y="200" width="200" height="100" rx="100" ry="50" fill="black" />
|
||||
|
||||
<rect x="275" y="50" width="200" height="100" ry="50" rx="100" fill="red" />
|
||||
<rect x="275" y="50" width="200" height="100" ry="75" rx="100" fill="black" />
|
||||
<rect x="275" y="200" width="200" height="100" ry="75" rx="100" fill="red" />
|
||||
<rect x="275" y="200" width="200" height="100" ry="50" rx="100" fill="black" />
|
||||
|
||||
</g>
|
||||
<g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
|
||||
<text id="revision" x="10" y="340" stroke="none"
|
||||
fill="black">$Revision: 1.3 $</text>
|
||||
</g>
|
||||
<rect id="test-frame" x="1" y="1" width="478" height="358" fill="none" stroke="#000"/>
|
||||
<!-- comment out this watermark once the test is approved -->
|
||||
<!--
|
||||
<g id="draft-watermark">
|
||||
<rect x="1" y="1" width="478" height="20" fill="red" stroke="black" stroke-width="1"/>
|
||||
<text font-family="SVGFreeSansASCII,sans-serif" font-weight="bold" font-size="20" x="240"
|
||||
text-anchor="middle" y="18" stroke-width="0.5" stroke="black" fill="white">DRAFT</text>
|
||||
</g>
|
||||
-->
|
||||
</svg>
|
After Width: | Height: | Size: 3.5 KiB |
145
MacawTests/w3cSVGTests/shapes-rect-07-f-manual.reference
Normal file
145
MacawTests/w3cSVGTests/shapes-rect-07-f-manual.reference
Normal file
@ -0,0 +1,145 @@
|
||||
{
|
||||
"contents" : [
|
||||
{
|
||||
"contents" : [
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 16711680
|
||||
},
|
||||
"form" : {
|
||||
"rect" : {
|
||||
"h" : 100,
|
||||
"type" : "Rect",
|
||||
"w" : 200,
|
||||
"x" : 25,
|
||||
"y" : 50
|
||||
},
|
||||
"rx" : 100,
|
||||
"ry" : 100,
|
||||
"type" : "RoundRect"
|
||||
},
|
||||
"node" : "Shape"
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"form" : {
|
||||
"rect" : {
|
||||
"h" : 100,
|
||||
"type" : "Rect",
|
||||
"w" : 200,
|
||||
"x" : 25,
|
||||
"y" : 50
|
||||
},
|
||||
"rx" : 100,
|
||||
"ry" : 50,
|
||||
"type" : "RoundRect"
|
||||
},
|
||||
"node" : "Shape"
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 16711680
|
||||
},
|
||||
"form" : {
|
||||
"rect" : {
|
||||
"h" : 100,
|
||||
"type" : "Rect",
|
||||
"w" : 200,
|
||||
"x" : 25,
|
||||
"y" : 200
|
||||
},
|
||||
"rx" : 100,
|
||||
"ry" : 50,
|
||||
"type" : "RoundRect"
|
||||
},
|
||||
"node" : "Shape"
|
||||
},
|
||||
{
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"form" : {
|
||||
"rect" : {
|
||||
"h" : 100,
|
||||
"type" : "Rect",
|
||||
"w" : 200,
|
||||
"x" : 25,
|
||||
"y" : 200
|
||||
},
|
||||
"rx" : 100,
|
||||
"ry" : 100,
|
||||
"type" : "RoundRect"
|
||||
},
|
||||
"node" : "Shape"
|
||||
}
|
||||
],
|
||||
"node" : "Group"
|
||||
},
|
||||
{
|
||||
"contents" : [
|
||||
{
|
||||
"align" : "min",
|
||||
"baseline" : "bottom",
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"font" : {
|
||||
"name" : "SVGFreeSansASCII,sans-serif",
|
||||
"size" : 32,
|
||||
"weight" : "normal"
|
||||
},
|
||||
"node" : "Text",
|
||||
"place" : "1, 0, 0, 1, 10, 340",
|
||||
"text" : "$Revision: 1.2 $"
|
||||
}
|
||||
],
|
||||
"node" : "Group"
|
||||
},
|
||||
{
|
||||
"form" : {
|
||||
"h" : 358,
|
||||
"type" : "Rect",
|
||||
"w" : 478,
|
||||
"x" : 1,
|
||||
"y" : 1
|
||||
},
|
||||
"node" : "Shape",
|
||||
"stroke" : {
|
||||
"cap" : "butt",
|
||||
"dashes" : [
|
||||
|
||||
],
|
||||
"fill" : {
|
||||
"type" : "Color",
|
||||
"val" : 0
|
||||
},
|
||||
"join" : "miter",
|
||||
"width" : 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"layout" : {
|
||||
"scalingMode" : "meet",
|
||||
"svgSize" : {
|
||||
"height" : "100.0%",
|
||||
"width" : "100.0%"
|
||||
},
|
||||
"viewBox" : {
|
||||
"h" : 360,
|
||||
"type" : "Rect",
|
||||
"w" : 480,
|
||||
"x" : 0,
|
||||
"y" : 0
|
||||
},
|
||||
"xAligningMode" : "mid",
|
||||
"yAligningMode" : "mid"
|
||||
},
|
||||
"node" : "Canvas"
|
||||
}
|
61
MacawTests/w3cSVGTests/shapes-rect-07-f-manual.svg
Normal file
61
MacawTests/w3cSVGTests/shapes-rect-07-f-manual.svg
Normal file
@ -0,0 +1,61 @@
|
||||
<svg id="svg-root" width="100%" height="100%"
|
||||
viewBox="0 0 480 360" xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<!--======================================================================-->
|
||||
<!--= Copyright 2008 World Wide Web Consortium, (Massachusetts =-->
|
||||
<!--= Institute of Technology, European Research Consortium for =-->
|
||||
<!--= Informatics and Mathematics (ERCIM), Keio University). =-->
|
||||
<!--= All Rights Reserved. =-->
|
||||
<!--= See http://www.w3.org/Consortium/Legal/. =-->
|
||||
<!--======================================================================-->
|
||||
<d:SVGTestCase xmlns:d="http://www.w3.org/2000/02/svg/testsuite/description/"
|
||||
template-version="1.4" reviewer="CL" author="Microsoft" status="accepted"
|
||||
version="$Revision: 1.2 $" testname="$RCSfile: shapes-rect-07-f.svg,v $">
|
||||
<d:testDescription xmlns="http://www.w3.org/1999/xhtml" href="http://www.w3.org/TR/SVG11/shapes.html#RectElement">
|
||||
<p>
|
||||
Checks that unspecified 'ry' and 'rx' attributes are copied from each other before their values are clamped.
|
||||
</p>
|
||||
</d:testDescription>
|
||||
<d:operatorScript xmlns="http://www.w3.org/1999/xhtml">
|
||||
<p>
|
||||
Run the test. No interaction required.
|
||||
</p>
|
||||
</d:operatorScript>
|
||||
<d:passCriteria xmlns="http://www.w3.org/1999/xhtml">
|
||||
<p>
|
||||
Test passes if there is no red visible on the page.
|
||||
</p>
|
||||
</d:passCriteria>
|
||||
</d:SVGTestCase>
|
||||
<title id="test-title">$RCSfile: shapes-rect-07-f.svg,v $</title>
|
||||
<defs>
|
||||
<font-face
|
||||
font-family="SVGFreeSansASCII"
|
||||
unicode-range="U+0-7F">
|
||||
<font-face-src>
|
||||
<font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/>
|
||||
</font-face-src>
|
||||
</font-face>
|
||||
</defs>
|
||||
<g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
|
||||
|
||||
<rect x="25" y="50" width="200" height="100" rx="100" fill="red" />
|
||||
<rect x="25" y="50" width="200" height="100" rx="100" ry="50" fill="black" />
|
||||
<rect x="25" y="200" width="200" height="100" rx="100" ry="50" fill="red" />
|
||||
<rect x="25" y="200" width="200" height="100" rx="100" fill="black" />
|
||||
|
||||
</g>
|
||||
<g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
|
||||
<text id="revision" x="10" y="340" stroke="none"
|
||||
fill="black">$Revision: 1.2 $</text>
|
||||
</g>
|
||||
<rect id="test-frame" x="1" y="1" width="478" height="358" fill="none" stroke="#000"/>
|
||||
<!-- comment out this watermark once the test is approved -->
|
||||
<!--
|
||||
<g id="draft-watermark">
|
||||
<rect x="1" y="1" width="478" height="20" fill="red" stroke="black" stroke-width="1"/>
|
||||
<text font-family="SVGFreeSansASCII,sans-serif" font-weight="bold" font-size="20" x="240"
|
||||
text-anchor="middle" y="18" stroke-width="0.5" stroke="black" fill="white">DRAFT</text>
|
||||
</g>
|
||||
-->
|
||||
</svg>
|
After Width: | Height: | Size: 2.9 KiB |
@ -1610,7 +1610,7 @@ private class PathDataReader {
|
||||
}
|
||||
|
||||
public func read() -> [PathSegment] {
|
||||
_ = readNext()
|
||||
readNext()
|
||||
var segments = [PathSegment]()
|
||||
while let array = readSegments() {
|
||||
segments.append(contentsOf: array)
|
||||
@ -1625,7 +1625,12 @@ private class PathDataReader {
|
||||
return [PathSegment(type: type)]
|
||||
}
|
||||
var result = [PathSegment]()
|
||||
let data = readData()
|
||||
let data: [Double]
|
||||
if type == .a || type == .A {
|
||||
data = readDataOfASegment()
|
||||
} else {
|
||||
data = readData()
|
||||
}
|
||||
var index = 0
|
||||
var isFirstSegment = true
|
||||
while index < data.count {
|
||||
@ -1663,6 +1668,28 @@ private class PathDataReader {
|
||||
}
|
||||
}
|
||||
|
||||
private func readDataOfASegment() -> [Double] {
|
||||
let argCount = getArgCount(segment: .A)
|
||||
var data: [Double] = []
|
||||
var index = 0
|
||||
while true {
|
||||
skipSpaces()
|
||||
let value: Double?
|
||||
let indexMod = index % argCount
|
||||
if indexMod == 3 || indexMod == 4 {
|
||||
value = readFlag()
|
||||
} else {
|
||||
value = readNum()
|
||||
}
|
||||
guard let doubleValue = value else {
|
||||
return data
|
||||
}
|
||||
data.append(doubleValue)
|
||||
index += 1
|
||||
}
|
||||
return data
|
||||
}
|
||||
|
||||
private func skipSpaces() {
|
||||
var ch = current
|
||||
while ch != nil && "\n\r\t ,".contains(String(ch!)) {
|
||||
@ -1670,21 +1697,42 @@ private class PathDataReader {
|
||||
}
|
||||
}
|
||||
|
||||
private func readFlag() -> Double? {
|
||||
guard let ch = current else {
|
||||
return .none
|
||||
}
|
||||
readNext()
|
||||
switch ch {
|
||||
case "0":
|
||||
return 0
|
||||
case "1":
|
||||
return 1
|
||||
default:
|
||||
return .none
|
||||
}
|
||||
}
|
||||
|
||||
fileprivate func readNum() -> Double? {
|
||||
guard let ch = current else {
|
||||
return nil
|
||||
return .none
|
||||
}
|
||||
if (ch >= "0" && ch <= "9") || ch == "." || ch == "-" {
|
||||
var chars = [ch]
|
||||
var hasDot = ch == "."
|
||||
while let ch = readDigit(&hasDot) {
|
||||
chars.append(ch)
|
||||
}
|
||||
var buf = ""
|
||||
buf.unicodeScalars.append(contentsOf: chars)
|
||||
return Double(buf)
|
||||
|
||||
guard ch >= "0" && ch <= "9" || ch == "." || ch == "-" else {
|
||||
return .none
|
||||
}
|
||||
return nil
|
||||
|
||||
var chars = [ch]
|
||||
var hasDot = ch == "."
|
||||
while let ch = readDigit(&hasDot) {
|
||||
chars.append(ch)
|
||||
}
|
||||
|
||||
var buf = ""
|
||||
buf.unicodeScalars.append(contentsOf: chars)
|
||||
guard let value = Double(buf) else {
|
||||
return .none
|
||||
}
|
||||
return value
|
||||
}
|
||||
|
||||
fileprivate func readDigit(_ hasDot: inout Bool) -> UnicodeScalar? {
|
||||
@ -1714,6 +1762,7 @@ private class PathDataReader {
|
||||
return false
|
||||
}
|
||||
|
||||
@discardableResult
|
||||
private func readNext() -> UnicodeScalar? {
|
||||
previous = current
|
||||
current = iterator.next()
|
||||
@ -1730,7 +1779,7 @@ private class PathDataReader {
|
||||
private func readSegmentType() -> PathSegmentType? {
|
||||
while true {
|
||||
if let type = getPathSegmentType() {
|
||||
_ = readNext()
|
||||
readNext()
|
||||
return type
|
||||
}
|
||||
if readNext() == nil {
|
||||
|
Loading…
Reference in New Issue
Block a user