1
1
mirror of https://github.com/exyte/Macaw.git synced 2024-08-16 08:30:33 +03:00

#391 add svg tests for text

This commit is contained in:
Daniil Manin 2019-06-14 17:24:49 +07:00
parent 70d23d7f82
commit fbaa559dbd
17 changed files with 1713 additions and 1 deletions

View File

@ -672,6 +672,21 @@
A74C832E229FBA4C0085A832 /* color-prop-04-t-manual-osx.reference in Resources */ = {isa = PBXBuildFile; fileRef = A74C832D229FBA4C0085A832 /* color-prop-04-t-manual-osx.reference */; };
A7632F6022B2500500803489 /* Direction.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7632F5F22B2500500803489 /* Direction.swift */; };
A7B4899322B3914D002D1D56 /* Direction.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7632F5F22B2500500803489 /* Direction.swift */; };
A7B4899922B3AAD7002D1D56 /* text-intro-09-b-manual.svg in Resources */ = {isa = PBXBuildFile; fileRef = A7B4899422B3AAD6002D1D56 /* text-intro-09-b-manual.svg */; };
A7B4899A22B3AAD7002D1D56 /* text-intro-01-t-manual.svg in Resources */ = {isa = PBXBuildFile; fileRef = A7B4899522B3AAD6002D1D56 /* text-intro-01-t-manual.svg */; };
A7B4899B22B3AAD7002D1D56 /* text-intro-04-t-manual.svg in Resources */ = {isa = PBXBuildFile; fileRef = A7B4899622B3AAD7002D1D56 /* text-intro-04-t-manual.svg */; };
A7B4899C22B3AAD7002D1D56 /* text-intro-11-t-manual.svg in Resources */ = {isa = PBXBuildFile; fileRef = A7B4899722B3AAD7002D1D56 /* text-intro-11-t-manual.svg */; };
A7B4899D22B3AAD7002D1D56 /* text-intro-02-b-manual.svg in Resources */ = {isa = PBXBuildFile; fileRef = A7B4899822B3AAD7002D1D56 /* text-intro-02-b-manual.svg */; };
A7B489A322B3AAE1002D1D56 /* text-intro-11-t-manual.reference in Resources */ = {isa = PBXBuildFile; fileRef = A7B4899E22B3AAE0002D1D56 /* text-intro-11-t-manual.reference */; };
A7B489A422B3AAE1002D1D56 /* text-intro-04-t-manual.reference in Resources */ = {isa = PBXBuildFile; fileRef = A7B4899F22B3AAE0002D1D56 /* text-intro-04-t-manual.reference */; };
A7B489A522B3AAE1002D1D56 /* text-intro-01-t-manual.reference in Resources */ = {isa = PBXBuildFile; fileRef = A7B489A022B3AAE1002D1D56 /* text-intro-01-t-manual.reference */; };
A7B489A622B3AAE1002D1D56 /* text-intro-09-b-manual.reference in Resources */ = {isa = PBXBuildFile; fileRef = A7B489A122B3AAE1002D1D56 /* text-intro-09-b-manual.reference */; };
A7B489A722B3AAE1002D1D56 /* text-intro-02-b-manual.reference in Resources */ = {isa = PBXBuildFile; fileRef = A7B489A222B3AAE1002D1D56 /* text-intro-02-b-manual.reference */; };
A7B489AD22B3AAF3002D1D56 /* text-intro-02-b-manual.png in Resources */ = {isa = PBXBuildFile; fileRef = A7B489A822B3AAF2002D1D56 /* text-intro-02-b-manual.png */; };
A7B489AE22B3AAF3002D1D56 /* text-intro-09-b-manual.png in Resources */ = {isa = PBXBuildFile; fileRef = A7B489A922B3AAF3002D1D56 /* text-intro-09-b-manual.png */; };
A7B489AF22B3AAF3002D1D56 /* text-intro-04-t-manual.png in Resources */ = {isa = PBXBuildFile; fileRef = A7B489AA22B3AAF3002D1D56 /* text-intro-04-t-manual.png */; };
A7B489B022B3AAF3002D1D56 /* text-intro-11-t-manual.png in Resources */ = {isa = PBXBuildFile; fileRef = A7B489AB22B3AAF3002D1D56 /* text-intro-11-t-manual.png */; };
A7B489B122B3AAF3002D1D56 /* text-intro-01-t-manual.png in Resources */ = {isa = PBXBuildFile; fileRef = A7B489AC22B3AAF3002D1D56 /* text-intro-01-t-manual.png */; };
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 */; };
@ -1251,6 +1266,21 @@
A74C832B229FB7690085A832 /* color-prop-04-t-manual-osx.svg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "color-prop-04-t-manual-osx.svg"; sourceTree = "<group>"; };
A74C832D229FBA4C0085A832 /* color-prop-04-t-manual-osx.reference */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "color-prop-04-t-manual-osx.reference"; sourceTree = "<group>"; };
A7632F5F22B2500500803489 /* Direction.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Direction.swift; sourceTree = "<group>"; };
A7B4899422B3AAD6002D1D56 /* text-intro-09-b-manual.svg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "text-intro-09-b-manual.svg"; sourceTree = "<group>"; };
A7B4899522B3AAD6002D1D56 /* text-intro-01-t-manual.svg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "text-intro-01-t-manual.svg"; sourceTree = "<group>"; };
A7B4899622B3AAD7002D1D56 /* text-intro-04-t-manual.svg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "text-intro-04-t-manual.svg"; sourceTree = "<group>"; };
A7B4899722B3AAD7002D1D56 /* text-intro-11-t-manual.svg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "text-intro-11-t-manual.svg"; sourceTree = "<group>"; };
A7B4899822B3AAD7002D1D56 /* text-intro-02-b-manual.svg */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "text-intro-02-b-manual.svg"; sourceTree = "<group>"; };
A7B4899E22B3AAE0002D1D56 /* text-intro-11-t-manual.reference */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "text-intro-11-t-manual.reference"; sourceTree = "<group>"; };
A7B4899F22B3AAE0002D1D56 /* text-intro-04-t-manual.reference */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "text-intro-04-t-manual.reference"; sourceTree = "<group>"; };
A7B489A022B3AAE1002D1D56 /* text-intro-01-t-manual.reference */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "text-intro-01-t-manual.reference"; sourceTree = "<group>"; };
A7B489A122B3AAE1002D1D56 /* text-intro-09-b-manual.reference */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "text-intro-09-b-manual.reference"; sourceTree = "<group>"; };
A7B489A222B3AAE1002D1D56 /* text-intro-02-b-manual.reference */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "text-intro-02-b-manual.reference"; sourceTree = "<group>"; };
A7B489A822B3AAF2002D1D56 /* text-intro-02-b-manual.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "text-intro-02-b-manual.png"; sourceTree = "<group>"; };
A7B489A922B3AAF3002D1D56 /* text-intro-09-b-manual.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "text-intro-09-b-manual.png"; sourceTree = "<group>"; };
A7B489AA22B3AAF3002D1D56 /* text-intro-04-t-manual.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "text-intro-04-t-manual.png"; sourceTree = "<group>"; };
A7B489AB22B3AAF3002D1D56 /* text-intro-11-t-manual.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "text-intro-11-t-manual.png"; sourceTree = "<group>"; };
A7B489AC22B3AAF3002D1D56 /* text-intro-01-t-manual.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "text-intro-01-t-manual.png"; 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>"; };
@ -1413,6 +1443,11 @@
4295954322A0F7CE00869079 /* shapes-rect-06-f-manual.png */,
4295954422A0F7CE00869079 /* shapes-polyline-02-t-manual.png */,
4295954522A0F7CE00869079 /* shapes-polygon-01-t-manual.png */,
A7B489AC22B3AAF3002D1D56 /* text-intro-01-t-manual.png */,
A7B489A822B3AAF2002D1D56 /* text-intro-02-b-manual.png */,
A7B489AA22B3AAF3002D1D56 /* text-intro-04-t-manual.png */,
A7B489A922B3AAF3002D1D56 /* text-intro-09-b-manual.png */,
A7B489AB22B3AAF3002D1D56 /* text-intro-11-t-manual.png */,
);
path = png;
sourceTree = "<group>";
@ -2053,6 +2088,16 @@
5B1AE1F820B6A669007EECCB /* text-fonts-01-t-manual.svg */,
5B1AE21520B6A669007EECCB /* text-fonts-02-t-manual.reference */,
5B1AE1DA20B6A669007EECCB /* text-fonts-02-t-manual.svg */,
A7B489A022B3AAE1002D1D56 /* text-intro-01-t-manual.reference */,
A7B4899522B3AAD6002D1D56 /* text-intro-01-t-manual.svg */,
A7B489A222B3AAE1002D1D56 /* text-intro-02-b-manual.reference */,
A7B4899822B3AAD7002D1D56 /* text-intro-02-b-manual.svg */,
A7B4899F22B3AAE0002D1D56 /* text-intro-04-t-manual.reference */,
A7B4899622B3AAD7002D1D56 /* text-intro-04-t-manual.svg */,
A7B489A122B3AAE1002D1D56 /* text-intro-09-b-manual.reference */,
A7B4899422B3AAD6002D1D56 /* text-intro-09-b-manual.svg */,
A7B4899E22B3AAE0002D1D56 /* text-intro-11-t-manual.reference */,
A7B4899722B3AAD7002D1D56 /* text-intro-11-t-manual.svg */,
5B1AE1EF20B6A669007EECCB /* types-basic-01-f-manual.reference */,
5B1AE20420B6A669007EECCB /* types-basic-01-f-manual.svg */,
);
@ -2271,6 +2316,7 @@
4295957B22A0F7CE00869079 /* struct-defs-01-t-manual.png in Resources */,
A74C81ED229284790085A832 /* struct-use-01-t-manual.svg in Resources */,
5B1AE23620B6A669007EECCB /* paths-data-07-t-manual.svg in Resources */,
A7B4899B22B3AAD7002D1D56 /* text-intro-04-t-manual.svg in Resources */,
5B1AE27720B6A669007EECCB /* coords-trans-03-t-manual.reference in Resources */,
5B1AE26420B6A669007EECCB /* painting-fill-03-t-manual.svg in Resources */,
5BAEA9C9206CEAA20049AAAE /* viewBox.svg in Resources */,
@ -2295,6 +2341,7 @@
5B1AE2B820B6A669007EECCB /* painting-stroke-03-t-manual.reference in Resources */,
4269F43E2257265800D91393 /* color-prop-04-t-manual.reference in Resources */,
4295957522A0F7CE00869079 /* color-prop-01-b-manual.png in Resources */,
A7B489A522B3AAE1002D1D56 /* text-intro-01-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 */,
@ -2302,6 +2349,7 @@
A74C82E4229E35D30085A832 /* pservers-grad-22-b-manual.svg in Resources */,
5B1AE2C220B6A669007EECCB /* coords-trans-05-t-manual.svg in Resources */,
5B1AE29D20B6A669007EECCB /* types-basic-01-f-manual.reference in Resources */,
A7B4899922B3AAD7002D1D56 /* text-intro-09-b-manual.svg in Resources */,
429595AD22A0F7CE00869079 /* coords-transformattr-01-f-manual.png in Resources */,
4295955E22A0F7CE00869079 /* painting-fill-04-t-manual.png in Resources */,
5B1AE25820B6A669007EECCB /* paths-data-08-t-manual.reference in Resources */,
@ -2323,6 +2371,7 @@
5B1AE2CA20B6A669007EECCB /* shapes-ellipse-01-t-manual.reference in Resources */,
5B1AE25420B6A669007EECCB /* paths-data-06-t-manual.svg in Resources */,
4295959622A0F7CE00869079 /* paths-data-16-t-manual.png in Resources */,
A7B489AE22B3AAF3002D1D56 /* text-intro-09-b-manual.png in Resources */,
4295955522A0F7CE00869079 /* struct-frag-01-t-manual.png in Resources */,
42DAF9AC22A612CF0095B936 /* color-prop-01-b-manual.svg in Resources */,
5B1AE26B20B6A669007EECCB /* shapes-polygon-02-t-manual.svg in Resources */,
@ -2367,6 +2416,7 @@
5B1AE24820B6A669007EECCB /* coords-coord-01-t-manual.svg in Resources */,
4295955622A0F7CE00869079 /* struct-frag-06-t-manual.png in Resources */,
5B1AE2B620B6A669007EECCB /* paths-data-04-t-manual.svg in Resources */,
A7B4899C22B3AAD7002D1D56 /* text-intro-11-t-manual.svg in Resources */,
5B1AE25620B6A669007EECCB /* paths-data-05-t-manual.reference in Resources */,
42DB451522A52A4200091DC6 /* pservers-grad-09-b-manual.png in Resources */,
4295954C22A0F7CE00869079 /* coords-trans-10-f-manual.png in Resources */,
@ -2406,11 +2456,14 @@
4295954722A0F7CE00869079 /* render-elems-03-t-manual.png in Resources */,
4295954822A0F7CE00869079 /* paths-data-03-f-manual.png in Resources */,
5B7E79DE20D2781A00C50BCF /* masking-intro-01-f-manual.reference in Resources */,
A7B489B022B3AAF3002D1D56 /* text-intro-11-t-manual.png in Resources */,
42DB451322A52A4200091DC6 /* masking-path-13-f-manual.png in Resources */,
A7B489B122B3AAF3002D1D56 /* text-intro-01-t-manual.png in Resources */,
5B1AE28A20B6A669007EECCB /* shapes-polygon-01-t-manual.reference in Resources */,
4295955B22A0F7CE00869079 /* shapes-rect-05-f-manual.png in Resources */,
4295958D22A0F7CE00869079 /* coords-trans-02-t-manual.png in Resources */,
4295956C22A0F7CE00869079 /* pservers-grad-02-b-manual.png in Resources */,
A7B489A322B3AAE1002D1D56 /* text-intro-11-t-manual.reference in Resources */,
5B1AE27920B6A669007EECCB /* shapes-circle-01-t-manual.svg in Resources */,
5B1AE25E20B6A669007EECCB /* paths-data-17-f-manual.reference in Resources */,
5B1AE23F20B6A669007EECCB /* coords-trans-06-t-manual.svg in Resources */,
@ -2448,6 +2501,7 @@
4295957F22A0F7CE00869079 /* metadata-example-01-t-manual.png in Resources */,
5B1AE2D320B6A669007EECCB /* shapes-rect-04-f-manual.reference in Resources */,
5B1AE23C20B6A669007EECCB /* paths-data-15-t-manual.svg in Resources */,
A7B489AF22B3AAF3002D1D56 /* text-intro-04-t-manual.png in Resources */,
5BAE2039208E163D006BF277 /* polygon.reference in Resources */,
5B1AE27220B6A669007EECCB /* struct-frag-06-t-manual.svg in Resources */,
421C66502225196900DD73F5 /* color-prop-04-t-manual.svg in Resources */,
@ -2474,6 +2528,7 @@
5B7E79C420CA7F1B00C50BCF /* pservers-grad-03-b-manual.svg in Resources */,
5B1AE27F20B6A669007EECCB /* painting-stroke-07-t-manual.reference in Resources */,
4295956622A0F7CE00869079 /* coords-trans-07-t-manual.png in Resources */,
A7B4899D22B3AAD7002D1D56 /* text-intro-02-b-manual.svg in Resources */,
4295956A22A0F7CE00869079 /* paths-data-14-t-manual.png in Resources */,
5B1AE23320B6A669007EECCB /* paths-data-06-t-manual.reference in Resources */,
5B1AE2C820B6A669007EECCB /* paths-data-19-f-manual.svg in Resources */,
@ -2490,6 +2545,7 @@
A74C832E229FBA4C0085A832 /* color-prop-04-t-manual-osx.reference in Resources */,
4295956822A0F7CE00869079 /* paths-data-06-t-manual.png in Resources */,
5B1AE28720B6A669007EECCB /* render-elems-03-t-manual.svg in Resources */,
A7B489AD22B3AAF3002D1D56 /* text-intro-02-b-manual.png in Resources */,
4295956522A0F7CE00869079 /* painting-stroke-01-t-manual.png in Resources */,
5B1AE2AD20B6A669007EECCB /* painting-stroke-05-t-manual.reference in Resources */,
5B1AE25920B6A669007EECCB /* coords-trans-01-b-manual.svg in Resources */,
@ -2498,6 +2554,7 @@
5BFEF5D720BC1C1F008DAC11 /* paths-data-18-f-manual.reference in Resources */,
5BAE203F208E163D006BF277 /* transform.reference in Resources */,
5B1AE24920B6A669007EECCB /* painting-control-06-f-manual.svg in Resources */,
A7B489A722B3AAE1002D1D56 /* text-intro-02-b-manual.reference in Resources */,
5B1AE2B320B6A669007EECCB /* coords-trans-04-t-manual.reference in Resources */,
5BAE2038208E163D006BF277 /* polyline.reference in Resources */,
5B37139C20BE95D7004BB6EE /* pservers-grad-01-b-manual.reference in Resources */,
@ -2518,6 +2575,7 @@
5B1AE29F20B6A669007EECCB /* painting-stroke-09-t-manual.svg in Resources */,
429595A222A0F7CE00869079 /* coords-trans-08-t-manual.png in Resources */,
5B1AE27D20B6A669007EECCB /* shapes-polygon-03-t-manual.svg in Resources */,
A7B489A622B3AAE1002D1D56 /* text-intro-09-b-manual.reference in Resources */,
4295958322A0F7CE00869079 /* pservers-grad-01-b-manual.png in Resources */,
5B1AE26020B6A669007EECCB /* shapes-polygon-02-t-manual.reference in Resources */,
4295959022A0F7CE00869079 /* painting-control-02-f-manual.png in Resources */,
@ -2567,9 +2625,11 @@
4295959722A0F7CE00869079 /* color-prop-03-t-manual.png in Resources */,
5B1AE24F20B6A669007EECCB /* painting-stroke-02-t-manual.reference in Resources */,
4295958C22A0F7CE00869079 /* shapes-rect-03-t-manual.png in Resources */,
A7B489A422B3AAE1002D1D56 /* text-intro-04-t-manual.reference in Resources */,
4295958A22A0F7CE00869079 /* paths-data-05-t-manual.png in Resources */,
4295958B22A0F7CE00869079 /* coords-trans-05-t-manual.png in Resources */,
4295956322A0F7CE00869079 /* painting-stroke-06-t-manual.png in Resources */,
A7B4899A22B3AAD7002D1D56 /* text-intro-01-t-manual.svg in Resources */,
5B1AE28420B6A669007EECCB /* shapes-polyline-01-t-manual.reference in Resources */,
4295957C22A0F7CE00869079 /* painting-control-03-f-manual.png in Resources */,
42DB450E22A52A4200091DC6 /* pservers-grad-24-f-manual.png in Resources */,

View File

@ -19,7 +19,7 @@ class MacawSVGTests: XCTestCase {
private let testFolderName = "MacawTestOutputData"
private let shouldComparePNGImages = true
private let multipleTestsWillRun = false
private let multipleTestsWillRun = true
private let shouldSaveFaildedTestImage = false
override func setUp() {
@ -814,6 +814,26 @@ class MacawSVGTests: XCTestCase {
validateJSON("masking-mask-02-f-manual")
}
func testTextIntro01() {
validateJSON("text-intro-01-t-manual")
}
func testTextIntro02() {
validateJSON("text-intro-02-b-manual")
}
func testTextIntro04() {
validateJSON("text-intro-04-t-manual")
}
func testTextIntro09() {
validateJSON("text-intro-09-b-manual")
}
func testTextIntro11() {
validateJSON("text-intro-11-t-manual")
}
func getImage(from svgName: String) -> MImage {
let bundle = Bundle(for: type(of: TestUtils()))
do {

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,212 @@
{
"contents" : [
{
"contents" : [
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 255
},
"font" : {
"name" : "SVGFreeSansASCII,sans-serif",
"size" : 40,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 5, 40",
"text" : "Test left-to-right text."
},
{
"contents" : [
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "MissingInAction, Georgia, 'Arial Hebrew', 'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 75",
"text" : "Polish: Mogę jeść szkło, i mi ..."
},
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "MissingInAction, Georgia, 'Arial Hebrew', 'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 110",
"text" : "Russian: Я могу есть стекло, ..."
},
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "MissingInAction, Georgia, 'Arial Hebrew', 'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 145",
"text" : "Greek: Μπορώ να φάω ..."
},
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "MissingInAction, Georgia, 'Arial Hebrew', 'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 180",
"text" : "Hebrew: אני יכול לאכול זכוכית ... "
},
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "MissingInAction, Georgia, 'Arial Hebrew', 'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 215",
"text" : "Yiddish: איך קען עסן גלאָז און ..."
}
],
"node" : "Group"
},
{
"contents" : [
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "MissingInAction, 'MS Song', SimHei,'LucidaSansUnicode', 'Arial Unicode MS'",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 250",
"text" : "Chinese:我能吞下玻璃而不伤身体。"
}
],
"node" : "Group"
},
{
"contents" : [
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "MissingInAction, 'MS-Gothic','LucidaSansUnicode', 'Arial Unicode MS'",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 285",
"text" : "Japanese: 私はガラスを食べます。"
}
],
"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.9 $"
}
],
"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"
}

View File

@ -0,0 +1,95 @@
<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="SVGWG" author="Jon Ferraiolo" status="accepted"
version="$Revision: 1.9 $" testname="$RCSfile: text-intro-01-t.svg,v $">
<d:testDescription xmlns="http://www.w3.org/1999/xhtml" href="http://www.w3.org/TR/SVG11/text.html#Introduction">
<p>
Test left-to-right aspect of internationalized text.
</p>
<p>
Various text strings in various languages appear. The main
purpose of the test is to verify that the correct characters
appear and that they appear in the correct order and orientation, even
though the first choice font does not have the right glyphs.
</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>
Correct rendering requires that each character is rendered. It may be rendered
with the 'missing glyph' if no
glyphs are found in the fonts listed in the content, or in any fallback font
that is available. The first choice font
is a special SVG font that only contains the 'missing glyph'. Missing glyph from
other fonts may conformantly be used, however.
</p>
<p>
The test is passed if the lines of text appear as follows:
</p>
<ul>
<li>Polish: Mogę jeść szkło, i mi ...</li>
<li>Russian: Я могу есть стекло, ...</li>
<li>Greek: Μπορώ να φάω ...</li>
<li>Hebrew: אני יכול לאכול זכוכית ...</li>
<li>Yiddish: איך קען עסן גלאָז און ...</li>
<li>Chinese:我能吞下玻璃而不伤身体。</li>
<li>Japanese: 私はガラスを食べます。</li>
</ul>
</d:passCriteria>
</d:SVGTestCase>
<title id="test-title">$RCSfile: text-intro-01-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">
<defs>
<font id="Missy" horiz-adv-x="5">
<font-face font-family="MissingInAction" font-weight="normal" font-style="normal" units-per-em="8" cap-height="8" x-height="4" ascent="8" descent="2" alphabetic="0" mathematical="4" ideographic="-2" hanging="8"/>
<missing-glyph d="M1,3h2v2h-2z"/>
</font>
</defs>
<text font-size="40" fill="blue" x="5" y="40">Test left-to-right text.</text>
<g font-size="17" font-family="MissingInAction, Georgia, 'Arial Hebrew', 'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'">
<text x="10" y="75">Polish: Mogę jeść szkło, i mi ...</text>
<text x="10" y="110">Russian: Я могу есть стекло, ...</text>
<text x="10" y="145" font-size="17">Greek: Μπορώ να φάω ...</text>
<text x="10" y="180">Hebrew: אני יכול לאכול זכוכית ... </text>
<text x="10" y="215">Yiddish: איך קען עסן גלאָז און ...</text>
</g>
<g font-size="17" font-family="MissingInAction, 'MS Song', SimHei,'LucidaSansUnicode', 'Arial Unicode MS'">
<text x="10" y="250">Chinese:我能吞下玻璃而不伤身体。</text>
</g>
<g font-size="17" font-family="MissingInAction, 'MS-Gothic','LucidaSansUnicode', 'Arial Unicode MS'">
<text x="10" y="285" font-size="17">Japanese: 私はガラスを食べます。</text>
</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 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: 5.2 KiB

View File

@ -0,0 +1,183 @@
{
"contents" : [
{
"contents" : [
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 255
},
"font" : {
"name" : "SVGFreeSansASCII,sans-serif",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 40",
"text" : "unicode-bidi=\"bidi-override\" direction=\"ltr\"."
},
{
"contents" : [
{
"align" : "min",
"baseline" : "bottom",
"direction" : "lro",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'",
"size" : 18,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 80",
"text" : "Text \"אני יכול לאכול זכוכית וזה לא מזיק לי\" is in Hebrew"
}
],
"node" : "Group"
},
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 255
},
"font" : {
"name" : "SVGFreeSansASCII,sans-serif",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 140",
"text" : "unicode-bidi=\"bidi-override\" direction=\"rtl\"."
},
{
"contents" : [
{
"align" : "min",
"baseline" : "bottom",
"direction" : "rlo",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'",
"size" : 18,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 180",
"text" : "Text \"אני יכול לאכול זכוכית וזה לא מזיק לי\" is in Hebrew"
}
],
"node" : "Group"
},
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 255
},
"font" : {
"name" : "SVGFreeSansASCII,sans-serif",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 240",
"text" : "unicode-bidi=\"normal\" direction=\"rtl\"."
},
{
"contents" : [
{
"align" : "min",
"baseline" : "bottom",
"direction" : "rle",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'",
"size" : 18,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 280",
"text" : "Text \"אני יכול לאכול זכוכית וזה לא מזיק לי\" is in Hebrew"
}
],
"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.10 $"
}
],
"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"
}

View File

@ -0,0 +1,81 @@
<svg version="1.1" baseProfile="basic" 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="SVGWG" author="Jon Ferraiolo" status="accepted"
version="$Revision: 1.10 $" testname="$RCSfile: text-intro-02-b.svg,v $">
<d:testDescription xmlns="http://www.w3.org/1999/xhtml" href="http://www.w3.org/TR/SVG11/text.html#Introduction">
<p>
Test various aspects of internationalized text, including
left-to-right, right-to-left, and the
following properties: 'writing-mode',
'direction' and 'unicode-bidi'.
</p>
<p>
Various text strings in various languages appear. Ttest of bidi algorithms and support of 'unicode-bidi' and
'direction' properties.
</p>
</d:testDescription>
<d:operatorScript xmlns="http://www.w3.org/1999/xhtml">
<p>
This test requires installation of a system font that supports
the various international characters used in this test case. A
suitable font should be used by the SVG renderer if none of the
specified font families are available (or if they are available but do
not have the required glyphs).
</p>
<p>
Run the test. No interaction required.
</p>
</d:operatorScript>
<d:passCriteria xmlns="http://www.w3.org/1999/xhtml">
<p>
The test is passed if the correct characters
appear and they appear in the correct order and orientation.
Ensure that the three lines with Hebrew are ordered
correctly, as shown in the reference image.
</p>
</d:passCriteria>
</d:SVGTestCase>
<title id="test-title">$RCSfile: text-intro-02-b.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">
<text font-size="17" fill="blue" x="10" y="40">unicode-bidi="bidi-override" direction="ltr".</text>
<g font-size="18" font-family="'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'">
<text x="10" y="80" unicode-bidi="bidi-override" direction="ltr">Text "אני יכול לאכול זכוכית וזה לא מזיק לי" is in Hebrew</text>
</g>
<text font-size="17" fill="blue" x="10" y="140">unicode-bidi="bidi-override" direction="rtl".</text>
<g font-size="18" font-family="'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'">
<text x="10" y="180" unicode-bidi="bidi-override" direction="rtl" text-anchor="end">Text "אני יכול לאכול זכוכית וזה לא מזיק לי" is in Hebrew</text>
</g>
<text font-size="17" fill="blue" x="10" y="240">unicode-bidi="normal" direction="rtl".</text>
<g font-size="18" font-family="'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'">
<text x="10" y="280" unicode-bidi="normal" direction="rtl" text-anchor="end">Text "אני יכול לאכול זכוכית וזה לא מזיק לי" is in Hebrew</text>
</g>
</g>
<g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
<text id="revision" x="10" y="340" stroke="none" fill="black">$Revision: 1.10 $</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: 4.6 KiB

View File

@ -0,0 +1,202 @@
{
"contents" : [
{
"contents" : [
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 255
},
"font" : {
"name" : "Arial",
"size" : 16,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 20",
"text" : "Test horizontal text."
},
{
"contents" : [
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "'Arial Hebrew', 'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 60",
"text" : "Polish: Mogę jeść szkło, i mi nie szkodzi."
},
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "'Arial Hebrew', 'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 90",
"text" : "Russian: Я могу есть стекло, это мне не вредит."
},
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "'Arial Hebrew', 'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'",
"size" : 15,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 120",
"text" : "Greek: Μπορώ να φάω σπασμένα γυαλιά χωρίς να πάθω τίποτα."
},
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "'Arial Hebrew', 'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 150",
"text" : "Text \"אני יכול לאכול זכוכית וזה לא מזיק לי\" is in Hebrew"
},
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "'Arial Hebrew', 'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 180",
"text" : "Yiddish: איך קען עסן גלאָז און עס טוט מיר נישט װײ."
},
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "'Arial Hebrew', 'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 210",
"text" : "Chinese:我能吞下玻璃而不伤身体。"
},
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "'Arial Hebrew', 'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'",
"size" : 15,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 240",
"text" : "Japanese: 私はガラスを食べられます。それは私を傷つけません。"
}
],
"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.7 $"
}
],
"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"
}

View File

@ -0,0 +1,75 @@
<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="SVGWG" author="Jon Ferraiolo" status="accepted"
version="$Revision: 1.7 $" testname="$RCSfile: text-intro-04-t.svg,v $">
<d:testDescription xmlns="http://www.w3.org/1999/xhtml" href="http://www.w3.org/TR/SVG11/text.html#Introduction">
<p>
Test basic aspect of internationalized text.
</p>
<p>
Various text strings in various languages appear. The main
purpose of the test is to verify that the correct characters
appear and that they appear in the correct order and orientation.
</p>
<p>
A future version of this test
might include all necessary glyphs as an SVG font.
</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>
Correct rendering requires that each character is rendered. It is not required that a given character
be rendered with any particular font; just that it is rendered.
It may be rendered with the 'missing glyph' if no
glyphs are found in the fonts listed in the content, or in any fallback font that is available.
</p>
</d:passCriteria>
</d:SVGTestCase>
<title id="test-title">$RCSfile: text-intro-04-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">
<text font-family="Arial" font-size="16" fill="blue" x="10" y="20">Test horizontal text.</text>
<g font-size="17" font-family="'Arial Hebrew', 'Arial Unicode MS', 'LucidaSansUnicode','MS-Gothic'">
<text x="10" y="60">Polish: Mogę jeść szkło, i mi nie szkodzi.</text>
<text x="10" y="90">Russian: Я могу есть стекло, это мне не вредит.</text>
<text x="10" y="120" font-size="15">Greek: Μπορώ να φάω σπασμένα γυαλιά χωρίς να πάθω τίποτα.</text>
<!-- Greek and japanese smaller just to make it fit on the line -->
<text x="10" y="150">Text "אני יכול לאכול זכוכית וזה לא מזיק לי" is in Hebrew</text>
<text x="10" y="180">Yiddish: איך קען עסן גלאָז און עס טוט מיר נישט װײ.</text>
<text x="10" y="210">Chinese:我能吞下玻璃而不伤身体。</text>
<text x="10" y="240" font-size="15">Japanese: 私はガラスを食べられます。それは私を傷つけません。</text>
</g>
</g>
<g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
<text id="revision" x="10" y="340" stroke="none" fill="black">$Revision: 1.7 $</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: 4.4 KiB

View File

@ -0,0 +1,183 @@
{
"contents" : [
{
"contents" : [
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 255
},
"font" : {
"name" : "SVGFreeSansASCII,sans-serif",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 40",
"text" : "unicode-bidi=\"bidi-override\" direction=\"ltr\"."
},
{
"contents" : [
{
"align" : "min",
"baseline" : "bottom",
"direction" : "lro",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "SVGHebrew, 'Ezra SIL SR', serif",
"size" : 18,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 80",
"text" : "Text \"אני יכול לאכול זכוכית וזה לא מזיק לי\" is in Hebrew"
}
],
"node" : "Group"
},
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 255
},
"font" : {
"name" : "SVGFreeSansASCII,sans-serif",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 140",
"text" : "unicode-bidi=\"bidi-override\" direction=\"rtl\"."
},
{
"contents" : [
{
"align" : "min",
"baseline" : "bottom",
"direction" : "rlo",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "SVGHebrew, 'Ezra SIL SR', serif",
"size" : 18,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 180",
"text" : "Text \"אני יכול לאכול זכוכית וזה לא מזיק לי\" is in Hebrew"
}
],
"node" : "Group"
},
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 255
},
"font" : {
"name" : "SVGFreeSansASCII,sans-serif",
"size" : 17,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 240",
"text" : "unicode-bidi=\"normal\" direction=\"rtl\"."
},
{
"contents" : [
{
"align" : "min",
"baseline" : "bottom",
"direction" : "rle",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "SVGHebrew, 'Ezra SIL SR', serif",
"size" : 18,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 10, 280",
"text" : "Text \"אני יכול לאכול זכוכית וזה לא מזיק לי\" is in Hebrew"
}
],
"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.7 $"
}
],
"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"
}

View File

@ -0,0 +1,88 @@
<svg version="1.1" baseProfile="basic" 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="SVGWG" author="Jon Ferraiolo" status="accepted"
version="$Revision: 1.7 $" testname="$RCSfile: text-intro-09-b.svg,v $">
<d:testDescription xmlns="http://www.w3.org/1999/xhtml" href="http://www.w3.org/TR/SVG11/text.html#Introduction">
<p>
Test various aspects of internationalized text, including
left-to-right, right-to-left, and the
following properties: 'writing-mode',
'direction' and 'unicode-bidi'.
</p>
<p>
Various text strings in various languages appear. Test of bidi algorithms and support of 'unicode-bidi' and
'direction' properties. Uses Webfonts.
</p>
<p>
This test uses Webfonts; both SVG and WOFF fonts are provided.
</p>
</d:testDescription>
<d:operatorScript xmlns="http://www.w3.org/1999/xhtml">
<p>
Run the test. No interaction required. Make sure scripting is enabled.
</p>
</d:operatorScript>
<d:passCriteria xmlns="http://www.w3.org/1999/xhtml">
<p>
The test is passed if the correct characters
appear and they appear in the correct order and orientation.
Ensure that the three lines with Hebrew are ordered
correctly, as shown in the reference image.
</p>
</d:passCriteria>
</d:SVGTestCase>
<title id="test-title">$RCSfile: text-intro-09-b.svg,v $</title>
<defs>
<style type="text/css">
@font-face {
font-family: Ezra SIL SR;
src: url(woffs/EzraSILSR.woff) format("woff");
}
</style>
<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>
<font-face font-family="SVGHebrew" unicode-range="U+000D-FEFF">
<font-face-src>
<font-face-uri xlink:href="../resources/Heb.svg#SVGHebrew"/>
</font-face-src>
</font-face>
</defs>
<g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
<text font-size="17" fill="blue" x="10" y="40">unicode-bidi="bidi-override" direction="ltr".</text>
<g font-size="18" font-family="SVGHebrew, 'Ezra SIL SR', serif">
<text x="10" y="80" unicode-bidi="bidi-override" direction="ltr">Text "אני יכול לאכול זכוכית וזה לא מזיק לי" is in Hebrew</text>
</g>
<text font-size="17" fill="blue" x="10" y="140">unicode-bidi="bidi-override" direction="rtl".</text>
<g font-size="18" font-family="SVGHebrew, 'Ezra SIL SR', serif">
<text x="10" y="180" unicode-bidi="bidi-override" direction="rtl" text-anchor="end">Text "אני יכול לאכול זכוכית וזה לא מזיק לי" is in Hebrew</text>
</g>
<text font-size="17" fill="blue" x="10" y="240">unicode-bidi="normal" direction="rtl".</text>
<g font-size="18" font-family="SVGHebrew, 'Ezra SIL SR', serif">
<text x="10" y="280" unicode-bidi="normal" direction="rtl" text-anchor="end">Text "אני יכול לאכול זכוכית וזה לא מזיק לי" is in Hebrew</text>
</g>
</g>
<g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
<text id="revision" x="10" y="340" stroke="none" fill="black">$Revision: 1.7 $</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: 4.7 KiB

View File

@ -0,0 +1,419 @@
{
"contents" : [
{
"contents" : [
{
"contents" : [
{
"fill" : {
"type" : "Color",
"val" : 0
},
"form" : {
"segments" : [
{
"data" : [
120,
10
],
"type" : "M"
},
{
"data" : [
120,
280
],
"type" : "L"
}
],
"type" : "Path"
},
"node" : "Shape",
"stroke" : {
"cap" : "butt",
"dashes" : [
],
"fill" : {
"type" : "Color",
"val" : 12303291
},
"join" : "miter",
"width" : 1
}
},
{
"fill" : {
"type" : "Color",
"val" : 0
},
"form" : {
"segments" : [
{
"data" : [
240,
10
],
"type" : "M"
},
{
"data" : [
240,
280
],
"type" : "L"
}
],
"type" : "Path"
},
"node" : "Shape",
"stroke" : {
"cap" : "butt",
"dashes" : [
],
"fill" : {
"type" : "Color",
"val" : 12303291
},
"join" : "miter",
"width" : 1
}
},
{
"fill" : {
"type" : "Color",
"val" : 0
},
"form" : {
"segments" : [
{
"data" : [
360,
10
],
"type" : "M"
},
{
"data" : [
360,
280
],
"type" : "L"
}
],
"type" : "Path"
},
"node" : "Shape",
"stroke" : {
"cap" : "butt",
"dashes" : [
],
"fill" : {
"type" : "Color",
"val" : 12303291
},
"join" : "miter",
"width" : 1
}
},
{
"fill" : {
"type" : "Color",
"val" : 0
},
"form" : {
"segments" : [
{
"data" : [
10,
120
],
"type" : "M"
},
{
"data" : [
470,
120
],
"type" : "L"
}
],
"type" : "Path"
},
"node" : "Shape",
"stroke" : {
"cap" : "butt",
"dashes" : [
],
"fill" : {
"type" : "Color",
"val" : 12303291
},
"join" : "miter",
"width" : 1
}
},
{
"fill" : {
"type" : "Color",
"val" : 0
},
"form" : {
"segments" : [
{
"data" : [
10,
240
],
"type" : "M"
},
{
"data" : [
470,
240
],
"type" : "L"
}
],
"type" : "Path"
},
"node" : "Shape",
"stroke" : {
"cap" : "butt",
"dashes" : [
],
"fill" : {
"type" : "Color",
"val" : 12303291
},
"join" : "miter",
"width" : 1
}
},
{
"align" : "mid",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 7798784
},
"font" : {
"name" : "Andalus,Diwani Letter,serif",
"size" : 60,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 240, 120",
"text" : "آلات"
},
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "Andalus,Diwani Letter,serif",
"size" : 60,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 360, 120",
"text" : "آلات"
},
{
"align" : "max",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 153
},
"font" : {
"name" : "Andalus,Diwani Letter,serif",
"size" : 60,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 120, 120",
"text" : "آلات"
},
{
"align" : "mid",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 7798784
},
"font" : {
"name" : "Andalus,Diwani Letter,serif",
"size" : 60,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 240, 240",
"text" : "ثلاثة"
},
{
"align" : "min",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 0
},
"font" : {
"name" : "Andalus,Diwani Letter,serif",
"size" : 60,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 360, 240",
"text" : "ثلاثة"
},
{
"align" : "max",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 153
},
"font" : {
"name" : "Andalus,Diwani Letter,serif",
"size" : 60,
"weight" : "normal"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 120, 240",
"text" : "ثلاثة"
}
],
"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.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
}
},
{
"contents" : [
{
"fill" : {
"type" : "Color",
"val" : 16711680
},
"form" : {
"h" : 20,
"type" : "Rect",
"w" : 478,
"x" : 1,
"y" : 1
},
"node" : "Shape",
"stroke" : {
"cap" : "butt",
"dashes" : [
],
"fill" : {
"type" : "Color",
"val" : 0
},
"join" : "miter",
"width" : 1
}
},
{
"align" : "mid",
"baseline" : "bottom",
"fill" : {
"type" : "Color",
"val" : 16777215
},
"font" : {
"name" : "SVGFreeSansASCII,sans-serif",
"size" : 20,
"weight" : "bold"
},
"node" : "Text",
"place" : "1, 0, 0, 1, 240, 18",
"stroke" : {
"cap" : "butt",
"dashes" : [
],
"fill" : {
"type" : "Color",
"val" : 0
},
"join" : "miter",
"width" : 0.5
},
"text" : "DRAFT"
}
],
"node" : "Group"
}
],
"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"
}

View File

@ -0,0 +1,94 @@
<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="AG" author="CL" status="created"
version="$Revision: 1.2 $" testname="$RCSfile: text-intro-11-t.svg,v $">
<d:testDescription xmlns="http://www.w3.org/1999/xhtml" href="http://www.w3.org/TR/SVG11/text.html#Introduction">
<!-- derived from svg1.1 text-intro-06-t -->
<p>
This test ensures that mandatory ligatures in Arabic are displayed.
Three values for text-anchor are also tested;
middle,
start and
end.
This test uses platform fonts for rendering.
</p>
<p>
There are two subtests. The first
requires an isolate lam-alef ligature and the second requires
a right-joining lam-alef ligature.
</p>
<p>
The first subtest has the word for 'tools', آلات
0622: آ ARABIC LETTER ALEF WITH MADDA ABOVE
0644: ل ARABIC LETTER LAM
0627: ا ARABIC LETTER ALEF
062A: ت ARABIC LETTER TEH
</p>
<p>
The second subtest has the word for 'three', ثلاثة
062B: ث ARABIC LETTER THEH
0644: ل ARABIC LETTER LAM
0627: ا ARABIC LETTER ALEF
062B: ث ARABIC LETTER THEH
0629: ة ARABIC LETTER TEH MARBUTA
</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 is passed if the blue glyphs آ and ث touch the first vertical
line. The second vertical line falls in middle of the brown glyphs
inbetween آلا and ت and inbetween ثلا and ثة. The black glyphs ت and ة
touch the last vertical line.
</p>
</d:passCriteria>
</d:SVGTestCase>
<title id="test-title">$RCSfile: text-intro-11-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 font-family="Andalus,Diwani Letter,serif" font-size="60">
<path d="M120,10 L120,280" stroke="#BBB"/>
<path d="M240,10 L240,280" stroke="#BBB"/>
<path d="M360,10 L360,280" stroke="#BBB"/>
<path d="M10,120 L470,120" stroke="#BBB"/>
<path d="M10,240 L470,240" stroke="#BBB"/>
<text text-anchor="middle" x="240" y="120" xml:lang="ar" fill="#700">آلات</text>
<text text-anchor="start" x="360" y="120" xml:lang="ar">آلات</text>
<text text-anchor="end" x="120" y="120" xml:lang="ar" fill="#009">آلات</text>
<text text-anchor="middle" x="240" y="240" xml:lang="ar" fill="#700">ثلاثة</text>
<text text-anchor="start" x="360" y="240" xml:lang="ar">ثلاثة</text>
<text text-anchor="end" x="120" y="240" xml:lang="ar" fill="#009">ثلاثة</text>
</g>
</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: 4.6 KiB