diff --git a/tests/visual_tests/data/repeat-labels.csv b/tests/visual_tests/data/repeat-labels.csv
new file mode 100644
index 000000000..206294002
--- /dev/null
+++ b/tests/visual_tests/data/repeat-labels.csv
@@ -0,0 +1,10 @@
+wkt,type,name,ref
+"POINT(-3 -0.40)",poi,,
+"POINT(3 -0.40)",poi,,
+"POINT(-3 -3.6)",poi,,
+"POINT(3 -3.6)",poi,,
+"LINESTRING(-12 2, 12 2)",motorway,First Hwy,1
+"LINESTRING(-12 1, 12 1)",motorway,First Hwy,1
+"LINESTRING(-12 3, 12 3)",motorway,Second Hwy,2
+"LINESTRING(-12 -1, 8 -1, 8 -2, -8 -2, -8 -3, 12 -3)",secondary,Main Street,
+
diff --git a/tests/visual_tests/grids/repeat-labels-1-750-250-1.0-grid-reference.json b/tests/visual_tests/grids/repeat-labels-1-750-250-1.0-grid-reference.json
new file mode 100644
index 000000000..1ecbce60c
--- /dev/null
+++ b/tests/visual_tests/grids/repeat-labels-1-750-250-1.0-grid-reference.json
@@ -0,0 +1,79 @@
+{
+ "keys": [
+ "",
+ "7",
+ "5",
+ "6",
+ "1",
+ "2",
+ "8",
+ "3",
+ "4"
+ ],
+ "data": {},
+ "grid": [
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!",
+ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!",
+ " !!!! ! !!!! ! !!!!! ! !!!! !!!! !!!!! ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " #### #### ##### #### #### #### ",
+ "############################################################################################################################################################################################",
+ "############################################################################################################################################################################################",
+ " #### # #### # ##### # #### # #### #### ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " $$$$ $$$$ $ $$$$$ $$$$ $ $$$$ $ $$$$ ",
+ "$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$",
+ "$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$",
+ " $ $ $ $ ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " % & ",
+ " %%% &&& ",
+ " %%% &&& ",
+ " ",
+ " ",
+ "'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ",
+ "'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ",
+ "'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ",
+ " '' ",
+ " '' ",
+ " '' ",
+ " '' ",
+ " '' ",
+ " ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ",
+ " ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ",
+ " '' ",
+ " '' ",
+ " '' ",
+ " '' ",
+ " '' ",
+ " '' ",
+ " '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''",
+ " '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''",
+ " ",
+ " ",
+ " ( ) ",
+ " ((( ))) ",
+ " ((( ))) ",
+ " ",
+ " "
+ ]
+}
\ No newline at end of file
diff --git a/tests/visual_tests/grids/repeat-labels-2-750-250-1.0-grid-reference.json b/tests/visual_tests/grids/repeat-labels-2-750-250-1.0-grid-reference.json
new file mode 100644
index 000000000..792acf9be
--- /dev/null
+++ b/tests/visual_tests/grids/repeat-labels-2-750-250-1.0-grid-reference.json
@@ -0,0 +1,79 @@
+{
+ "keys": [
+ "",
+ "7",
+ "5",
+ "6",
+ "1",
+ "2",
+ "8",
+ "3",
+ "4"
+ ],
+ "data": {},
+ "grid": [
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!",
+ "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " #### #### ##### #### #### #### ",
+ "############################################################################################################################################################################################",
+ "############################################################################################################################################################################################",
+ " #### #### ##### #### #### #### ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ "$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$",
+ "$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " % & ",
+ " %%% &&& ",
+ " %%% &&& ",
+ " ",
+ " ",
+ "'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ",
+ "'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ",
+ "'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ",
+ " '' ",
+ " '' ",
+ " '' ",
+ " '' ",
+ " '' ",
+ " ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ",
+ " ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ",
+ " '' ",
+ " '' ",
+ " '' ",
+ " '' ",
+ " '' ",
+ " '' ",
+ " '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''",
+ " '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''",
+ " ",
+ " ",
+ " ( ) ",
+ " ((( ))) ",
+ " ((( ))) ",
+ " ",
+ " "
+ ]
+}
\ No newline at end of file
diff --git a/tests/visual_tests/images/repeat-labels-1-750-250-1.0-agg-reference.png b/tests/visual_tests/images/repeat-labels-1-750-250-1.0-agg-reference.png
new file mode 100644
index 000000000..80367aa45
Binary files /dev/null and b/tests/visual_tests/images/repeat-labels-1-750-250-1.0-agg-reference.png differ
diff --git a/tests/visual_tests/images/repeat-labels-1-750-250-1.0-cairo-reference.png b/tests/visual_tests/images/repeat-labels-1-750-250-1.0-cairo-reference.png
new file mode 100644
index 000000000..b36b8dea2
Binary files /dev/null and b/tests/visual_tests/images/repeat-labels-1-750-250-1.0-cairo-reference.png differ
diff --git a/tests/visual_tests/images/repeat-labels-1-750-250-2.0-agg-reference.png b/tests/visual_tests/images/repeat-labels-1-750-250-2.0-agg-reference.png
new file mode 100644
index 000000000..fabaa9b78
Binary files /dev/null and b/tests/visual_tests/images/repeat-labels-1-750-250-2.0-agg-reference.png differ
diff --git a/tests/visual_tests/images/repeat-labels-1-750-250-2.0-cairo-reference.png b/tests/visual_tests/images/repeat-labels-1-750-250-2.0-cairo-reference.png
new file mode 100644
index 000000000..84a3bdcc8
Binary files /dev/null and b/tests/visual_tests/images/repeat-labels-1-750-250-2.0-cairo-reference.png differ
diff --git a/tests/visual_tests/images/repeat-labels-2-750-250-1.0-agg-reference.png b/tests/visual_tests/images/repeat-labels-2-750-250-1.0-agg-reference.png
new file mode 100644
index 000000000..84bfe88f7
Binary files /dev/null and b/tests/visual_tests/images/repeat-labels-2-750-250-1.0-agg-reference.png differ
diff --git a/tests/visual_tests/images/repeat-labels-2-750-250-1.0-cairo-reference.png b/tests/visual_tests/images/repeat-labels-2-750-250-1.0-cairo-reference.png
new file mode 100644
index 000000000..e9f545bd0
Binary files /dev/null and b/tests/visual_tests/images/repeat-labels-2-750-250-1.0-cairo-reference.png differ
diff --git a/tests/visual_tests/images/repeat-labels-2-750-250-2.0-agg-reference.png b/tests/visual_tests/images/repeat-labels-2-750-250-2.0-agg-reference.png
new file mode 100644
index 000000000..3b0026cdf
Binary files /dev/null and b/tests/visual_tests/images/repeat-labels-2-750-250-2.0-agg-reference.png differ
diff --git a/tests/visual_tests/images/repeat-labels-2-750-250-2.0-cairo-reference.png b/tests/visual_tests/images/repeat-labels-2-750-250-2.0-cairo-reference.png
new file mode 100644
index 000000000..e9e320aa7
Binary files /dev/null and b/tests/visual_tests/images/repeat-labels-2-750-250-2.0-cairo-reference.png differ
diff --git a/tests/visual_tests/styles/repeat-labels-1.xml b/tests/visual_tests/styles/repeat-labels-1.xml
new file mode 100644
index 000000000..e116f57a2
--- /dev/null
+++ b/tests/visual_tests/styles/repeat-labels-1.xml
@@ -0,0 +1,43 @@
+
+
+
diff --git a/tests/visual_tests/styles/repeat-labels-2.xml b/tests/visual_tests/styles/repeat-labels-2.xml
new file mode 100644
index 000000000..b78dca811
--- /dev/null
+++ b/tests/visual_tests/styles/repeat-labels-2.xml
@@ -0,0 +1,43 @@
+
+
+
diff --git a/tests/visual_tests/test.py b/tests/visual_tests/test.py
index dd5004fd1..b4c91e392 100755
--- a/tests/visual_tests/test.py
+++ b/tests/visual_tests/test.py
@@ -3,8 +3,8 @@
import sys
import mapnik
-mapnik.logger.set_severity(mapnik.severity_type.None)
-#mapnik.logger.set_severity(mapnik.severity_type.Debug)
+#mapnik.logger.set_severity(mapnik.severity_type.None)
+mapnik.logger.set_severity(mapnik.severity_type.Debug)
import shutil
import sys
import os.path
@@ -159,6 +159,8 @@ files = {
'rtl-point': {'sizes': [(200, 200)],'bbox':default_text_box},
'jalign-auto': {'sizes': [(200, 200)],'bbox':default_text_box},
'line-offset': {'sizes':[(900, 250)],'bbox': mapnik.Box2d(-5.192, 50.189, -5.174, 50.195)},
+ 'repeat-labels-1': {'sizes': [(750,250)],'bbox':mapnik.Box2d(-12, -4, 12, 4)},
+ 'repeat-labels-2': {'sizes': [(750,250)],'bbox':mapnik.Box2d(-12, -4, 12, 4)},
'text-bug1532': {'sizes': [(600, 165)]},
'text-bug1533': {'sizes': [(600, 600)]},
'text-bug1820-1': {'sizes': [(600, 300)], 'bbox': default_text_box},