diff --git a/tests/data/svg/airfield-12-nobox.svg b/tests/data/svg/airfield-12-nobox.svg
new file mode 100644
index 000000000..c2362b034
--- /dev/null
+++ b/tests/data/svg/airfield-12-nobox.svg
@@ -0,0 +1,121 @@
+
+
+
+
diff --git a/tests/data/svg/airfield-12.svg b/tests/data/svg/airfield-12.svg
new file mode 100644
index 000000000..74c726a0e
--- /dev/null
+++ b/tests/data/svg/airfield-12.svg
@@ -0,0 +1,129 @@
+
+
+
+
diff --git a/tests/visual_tests/grids/marker-on-line-svg-no-box-600-400-1.0-grid-reference.json b/tests/visual_tests/grids/marker-on-line-svg-no-box-600-400-1.0-grid-reference.json
new file mode 100644
index 000000000..a5bac90d0
--- /dev/null
+++ b/tests/visual_tests/grids/marker-on-line-svg-no-box-600-400-1.0-grid-reference.json
@@ -0,0 +1,109 @@
+{
+ "keys": [
+ "",
+ "1"
+ ],
+ "data": {},
+ "grid": [
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " !!!! ",
+ " !!!! !!!!! !",
+ " !!! !!!!!!!!!!!! ",
+ " ! !!!! !!!!!!!!!!! ",
+ " !!!! !!!!!!!!!! !!! ",
+ " !!!!! !!!!!!!!!!! !!! ",
+ " !!!! !!!!!!!!!!!! !!! !! ",
+ " !!! !!!!!!!!!!!!!!!!! !!! ",
+ " !! !!!! !!!!!!!!!! !!! ",
+ " ! !!!! !!!!!!!!!! !!! ",
+ " !!!! !!!!!!!!!!! !!! ",
+ " !!!! !!!!!!!!!!!! !!! ! ",
+ " !!!! !!!!!!!!!!!!! !! !! ",
+ " !!! !!!! !!!!!!!!!!! !!! ",
+ " ! !!! !!!!!!!!!!! !!! ",
+ " !!!! !!!!!!!!!! !!! ",
+ " !!!! !!!!!!!!!!! !!! ",
+ " !!!! !!!!!!!!!!!! !!! !! ",
+ " !!! !!!!! !!!!!!!!!!! !!! ",
+ " !! !!!! !!!!!!!!!! !!! ",
+ " !!!! !!!!!!!!!! !!! ",
+ " !!!! !!!!!!!!!!! !!! ",
+ " !!!! !!!!!!!!!!! !!! ! ",
+ " !!!! !!!!!!!!!!!!!!!! !!! ",
+ " !! !!! !!!!!!!!!!! !!! ",
+ " ! !!!! !!!!!!!!!! !!! ",
+ " !!!! !!!!!!!!!! !!! ",
+ " !!!! !!!!!!!!!!! !!! ",
+ " !!!! !!!!!!!!!!!!! !!! !! ",
+ " !!!!!!!!!!!!!!!! !!! ",
+ " !!!!!!!!!! !!! ",
+ "!!!!! !!! ",
+ " !!! ",
+ " ! ",
+ " ",
+ " "
+ ]
+}
\ No newline at end of file
diff --git a/tests/visual_tests/grids/marker-on-line-svg-no-box-600-400-2.0-grid-reference.json b/tests/visual_tests/grids/marker-on-line-svg-no-box-600-400-2.0-grid-reference.json
new file mode 100644
index 000000000..7cf739aa1
--- /dev/null
+++ b/tests/visual_tests/grids/marker-on-line-svg-no-box-600-400-2.0-grid-reference.json
@@ -0,0 +1,109 @@
+{
+ "keys": [
+ "",
+ "1"
+ ],
+ "data": {},
+ "grid": [
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " !! ",
+ " !!!!!!!! ",
+ " !!!!!!! ",
+ " !!!!! !!!!!! ",
+ " !!!!!!! !!!!!!!!! !",
+ " !! !!!!!!!! !!!!!!!!!!!! ",
+ " !!!!!!! !!!!!!!!!!!!!!!!!!!!!!! ",
+ " !!!!!!!! !!!!!!!!!!!!!!!!!!!! ",
+ " !!!!!! !!!!!!!! !!!!!!!!!!!!!!!!!!!!!! ",
+ " !!!!!!!! !!!!!!!!!!!!!!!!!!!!! !!!!!! ",
+ " !!! !!!!!!! !!!!!!!!!!!!!!!!!!! !!!!!! ",
+ " !!!!!!!! !!!!!!!!!! !!!!!!!!!!!! ! !!!!!! !! ",
+ " !!!!!!! !!!!!!!!!!!!!!!!!!!! !!!!!! ",
+ " !!!!!! !!!!!!!!! !!!!!!!!!!!!!!!!!!!!! !!!!! ",
+ " !!!!!!!! !!!!!!!!!!!!!!!!!!!!! !!!!! ",
+ " !!!! !!!!!!! !!!!!!!!!!!!!!!!!!!! !!!!! ",
+ " !!!!!!!! !!!!!!!!!!!!!!!!!!!!!! ! !!!!! !! ",
+ " !!!!!!!! !!!!!!!!!!!!!!!!!!! !!!!!! ",
+ " !!!!!!! !!!!!!!!!! !!!!!!!!!!!! !!! !!!!! !!!! ",
+ " !!!!!!!! !!!!!!!!!!!!!!!!!!!!! !!!!!! ",
+ " !!!! !!!!!!! !!!!!!!!!!!!!!!!!!!!! !!!!!! ",
+ " !!!!!!! !!!!!!!!! !!!!!!!!!!!! !!!!!! ! ",
+ " ! !!!!!!! !!!!!!!!!!!!!!!!!!! !!!!!! ",
+ " !!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!! ",
+ " !!!!!!!! !!!!!!!!!!!!!!!!!!!! !!!!! ",
+ " !!!!! !!!!!!! !!!!!!!!!!!!!!!!!!!!! !!!!! ",
+ " !!!!!!!! !!!!!!!!!!!!!!!!!!!!! !!!!! ",
+ " !! !!!!!!!! !!!!!!!!!!!!!!!!!!! !!!!!! ",
+ " !!!!!!!! !!!!!!!!!! !!!!!!!!!!!! !! !!!!! !!! ",
+ " !!!!!!!! !!!!!!!!!!!!!!!!!!!! !!!!!! ",
+ " !!!!!! !!!!!!!!!!!!!!!!!!!!! !!!!!! ",
+ " !!!!!!!!!!!!!!!!!!!!! !!!!!! ",
+ " !!!!!!!!!!!!!!!!!!!! !!!!!! ",
+ "!!!!!!!!!!!!!!! !!!!! !!! ",
+ "!!!!!!!!!! !!!!! ",
+ " !!!!!!!!! !!!!! ",
+ " !!!!!! ",
+ " !!!!!! ",
+ " !! "
+ ]
+}
\ No newline at end of file
diff --git a/tests/visual_tests/grids/marker-on-line-svg-with-box-600-400-1.0-grid-reference.json b/tests/visual_tests/grids/marker-on-line-svg-with-box-600-400-1.0-grid-reference.json
new file mode 100644
index 000000000..9528a7dac
--- /dev/null
+++ b/tests/visual_tests/grids/marker-on-line-svg-with-box-600-400-1.0-grid-reference.json
@@ -0,0 +1,109 @@
+{
+ "keys": [
+ "",
+ "1"
+ ],
+ "data": {},
+ "grid": [
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " !!!!!! ",
+ " !!!!!!!!!!! !",
+ " !!! !!!!!! !!!!! ",
+ " !! !!!!!! !!!!! !!!!! ",
+ " ! !!!!! !!!!!!!!!!!! !!!!! ",
+ " !!!!! !!!!!!!!!!!! !!!!! ! ",
+ " !!!!! !!!!! !!!!!! !!!!! !! ",
+ " !!!! !!!!! !!!!!! !!!!! !!! ",
+ " !!! !!!!! !!!!! !!!!!! !!!! ",
+ " ! !!!!!! !!!!!!!!!!!! !!!!! ",
+ " !!!!!! !!!!!!!!!!! !!!!!! ",
+ " !!!!!!!!!!!! !!!!! !!!!!! ! ",
+ " !!!! !!!!!! !!!!! !!!!! !!! ",
+ " !!! !!!!!! !!!!! !!!!! !!!! ",
+ " !! !!!!! !!!!!! !!!!! !!!!! ",
+ " ! !!!!! !!!!!!!!!!!! !!!!! ",
+ " !!!!! !!!!! !!!!!! !!!!! ! ",
+ " !!!!! !!!!! !!!!!! !!!!! !! ",
+ " !!!! !!!!! !!!!! !!!!!! !!! ",
+ " !!!!!!!!! !!!!! !!!!!! !!!! ",
+ " ! !!!!!! !!!!!!!!!!! !!!!!! ",
+ " !!!!!! !!!!!!!!!!! !!!!!! ",
+ " !!!!! !!!!!! !!!!! !!!!! !! ",
+ " !!!! !!!!!! !!!!! !!!!! !!! ",
+ " !!! !!!!! !!!!!! !!!!! !!!! ",
+ " !! !!!!! !!!!!! !!!!! !!!!! ",
+ " ! !!!!! !!!!!!!!!!!! !!!!! ",
+ " !!!!! !!!!! !!!!!! !!!!! ! ",
+ " !!!!! !!!!! !!!!! !!!!!! !! ",
+ "!!!!!! !!!!! !!!!!! !!! ",
+ " !!!!! !!!!! !!!!! ",
+ "!!!!!! !!!!!! ",
+ " !!!!! ! ",
+ " !! ",
+ " ",
+ " "
+ ]
+}
\ No newline at end of file
diff --git a/tests/visual_tests/grids/marker-on-line-svg-with-box-600-400-2.0-grid-reference.json b/tests/visual_tests/grids/marker-on-line-svg-with-box-600-400-2.0-grid-reference.json
new file mode 100644
index 000000000..8785b859c
--- /dev/null
+++ b/tests/visual_tests/grids/marker-on-line-svg-with-box-600-400-2.0-grid-reference.json
@@ -0,0 +1,109 @@
+{
+ "keys": [
+ "",
+ "1"
+ ],
+ "data": {},
+ "grid": [
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ! ",
+ " !!!!!!! ",
+ " !!!!!!!!!!! ",
+ " !!!! !!!!!!!!!! ",
+ " !!!!!!!!! !!!!!!!!!! !",
+ " !! !!!!!!!!!!! !!!!!!!!!! ",
+ " !!!!!!! !!!!!!!!!!! !!!!!!!!!!! ",
+ " !!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!! ",
+ " !!!!! !!!!!!!!!!! !!!!!!!!!! !!!!!!!!!! ",
+ " !!!!!!!!!! !!!!!!!!!!! !!!!!!!!!! !!!!!!!!!! ",
+ " !! !!!!!!!!!! !!!!!!!!!!! !!!!!!!!!!! !!!!!!!!! ",
+ " !!!!!!!! !!!!!!!!!! !!!!!!!!!! !!!!!!!!!!! !!!! ",
+ " !!!!!!!!!!! !!!!!!!!!!!! !!!!!!!!!! !!!!!!!!!! ",
+ " !!!!! !!!!!!!!!! !!!!!!!!!!! !!!!!!!!!!! !!!!!! ",
+ " !!!!!!!!!!! !!!!!!!!!! !!!!!!!!!!! !!!!!!!!!!! ! ",
+ " !!! !!!!!!!!!!! !!!!!!!!!! !!!!!!!!!! !!!!!!!!! ",
+ " !!!!!!!! !!!!!!!!!!! !!!!!!!!!!! !!!!!!!!!! !!! ",
+ " ! !!!!!!!!!! !!!!!!!!!!! !!!!!!!!!!! !!!!!!!!!!! ",
+ " !!!!!! !!!!!!!!!!! !!!!!!!!!! !!!!!!!!!! !!!!!! ",
+ " !!!!!!!!!! !!!!!!!!!!! !!!!!!!!!!!! !!!!!!!!!! ",
+ " !!! !!!!!!!!!! !!!!!!!!!!! !!!!!!!!!!! !!!!!!!! ",
+ " !!!!!!!!! !!!!!!!!!! !!!!!!!!!! !!!!!!!!!!! !!! ",
+ " ! !!!!!!!!!!! !!!!!!!!!!! !!!!!!!!!! !!!!!!!!!! ",
+ " !!!!!! !!!!!!!!!! !!!!!!!!!!! !!!!!!!!!!! !!!!! ",
+ " !!!!!!!!!!! !!!!!!!!!! !!!!!!!!!!!! !!!!!!!!!!! ",
+ " !!!! !!!!!!!!!!! !!!!!!!!!! !!!!!!!!!! !!!!!!!! ",
+ " !!!!!!!!! !!!!!!!!!!! !!!!!!!!!!! !!!!!!!!!! !! ",
+ " !! !!!!!!!!!! !!!!!!!!!! !!!!!!!!!!! !!!!!!!!!! ",
+ " !!!!!!! !!!!!!!!!!! !!!!!!!!!! !!!!!!!!!! !!!!! ",
+ " !!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!! ",
+ " !!!!!!!!!! !!!!!!!!!!! !!!!!!!!!!! !!!!!!! ",
+ " !!!!!!!!!! !!!!!!!!!! !!!!!!!!!!! !! ",
+ " !!!!!!!!!!! !!!!!!!!!! !!!!!!!!! ",
+ " !!!!!!!!!!! !!!!!!!!!!! !!!! ",
+ "! !!!!!!!!!! !!!!!!!!!!! ",
+ " !!!!!!!!!! !!!!!!! ",
+ " !!!!!!!!!! ! ",
+ " !!!!!!!!! ",
+ " !!!! "
+ ]
+}
\ No newline at end of file
diff --git a/tests/visual_tests/images/marker-on-line-svg-no-box-600-400-1.0-agg-reference.png b/tests/visual_tests/images/marker-on-line-svg-no-box-600-400-1.0-agg-reference.png
new file mode 100644
index 000000000..69e9fc959
Binary files /dev/null and b/tests/visual_tests/images/marker-on-line-svg-no-box-600-400-1.0-agg-reference.png differ
diff --git a/tests/visual_tests/images/marker-on-line-svg-no-box-600-400-1.0-cairo-reference.png b/tests/visual_tests/images/marker-on-line-svg-no-box-600-400-1.0-cairo-reference.png
new file mode 100644
index 000000000..960459782
Binary files /dev/null and b/tests/visual_tests/images/marker-on-line-svg-no-box-600-400-1.0-cairo-reference.png differ
diff --git a/tests/visual_tests/images/marker-on-line-svg-no-box-600-400-2.0-agg-reference.png b/tests/visual_tests/images/marker-on-line-svg-no-box-600-400-2.0-agg-reference.png
new file mode 100644
index 000000000..db3002c03
Binary files /dev/null and b/tests/visual_tests/images/marker-on-line-svg-no-box-600-400-2.0-agg-reference.png differ
diff --git a/tests/visual_tests/images/marker-on-line-svg-no-box-600-400-2.0-cairo-reference.png b/tests/visual_tests/images/marker-on-line-svg-no-box-600-400-2.0-cairo-reference.png
new file mode 100644
index 000000000..1f3040027
Binary files /dev/null and b/tests/visual_tests/images/marker-on-line-svg-no-box-600-400-2.0-cairo-reference.png differ
diff --git a/tests/visual_tests/images/marker-on-line-svg-with-box-600-400-1.0-agg-reference.png b/tests/visual_tests/images/marker-on-line-svg-with-box-600-400-1.0-agg-reference.png
new file mode 100644
index 000000000..0f77bda96
Binary files /dev/null and b/tests/visual_tests/images/marker-on-line-svg-with-box-600-400-1.0-agg-reference.png differ
diff --git a/tests/visual_tests/images/marker-on-line-svg-with-box-600-400-1.0-cairo-reference.png b/tests/visual_tests/images/marker-on-line-svg-with-box-600-400-1.0-cairo-reference.png
new file mode 100644
index 000000000..8f735c74b
Binary files /dev/null and b/tests/visual_tests/images/marker-on-line-svg-with-box-600-400-1.0-cairo-reference.png differ
diff --git a/tests/visual_tests/images/marker-on-line-svg-with-box-600-400-2.0-agg-reference.png b/tests/visual_tests/images/marker-on-line-svg-with-box-600-400-2.0-agg-reference.png
new file mode 100644
index 000000000..618638605
Binary files /dev/null and b/tests/visual_tests/images/marker-on-line-svg-with-box-600-400-2.0-agg-reference.png differ
diff --git a/tests/visual_tests/images/marker-on-line-svg-with-box-600-400-2.0-cairo-reference.png b/tests/visual_tests/images/marker-on-line-svg-with-box-600-400-2.0-cairo-reference.png
new file mode 100644
index 000000000..0e8bdf250
Binary files /dev/null and b/tests/visual_tests/images/marker-on-line-svg-with-box-600-400-2.0-cairo-reference.png differ
diff --git a/tests/visual_tests/styles/marker-on-line-svg-no-box.xml b/tests/visual_tests/styles/marker-on-line-svg-no-box.xml
new file mode 100644
index 000000000..a6ba56083
--- /dev/null
+++ b/tests/visual_tests/styles/marker-on-line-svg-no-box.xml
@@ -0,0 +1,51 @@
+
+
+
diff --git a/tests/visual_tests/styles/marker-on-line-svg-with-box.xml b/tests/visual_tests/styles/marker-on-line-svg-with-box.xml
new file mode 100644
index 000000000..ceb1c4586
--- /dev/null
+++ b/tests/visual_tests/styles/marker-on-line-svg-with-box.xml
@@ -0,0 +1,51 @@
+
+
+