diff --git a/core/todo.txt b/core/todo.txt
index ba9b1247b..c40042cbf 100644
--- a/core/todo.txt
+++ b/core/todo.txt
@@ -4,7 +4,10 @@ X https://github.com/processing/processing/pull/6081
X remove zero width no-break space (U+FEFF) character with trim()
X PShapeOpenGL setAttrib() warning says "setNormal()" instead of "setAttrib()"
X https://github.com/processing/processing4/issues/141
-
+X SVG Export
+X update Batik to 1.13 (from 1.8)
+X download it via direct link (don't check into repo)
+X fixes incompatibilities with org.w3c.dom and Java 11
fixed in 4.x (close/lock these with final 4.0 release)
_ AppKit errors from P2D/P3D
diff --git a/java/libraries/svg/.classpath b/java/libraries/svg/.classpath
index 150a20977..e720065c6 100644
--- a/java/libraries/svg/.classpath
+++ b/java/libraries/svg/.classpath
@@ -1,13 +1,12 @@
-
-
-
-
-
-
-
+
+
+
+
+
+
diff --git a/java/libraries/svg/.gitignore b/java/libraries/svg/.gitignore
new file mode 100644
index 000000000..207db9ab9
--- /dev/null
+++ b/java/libraries/svg/.gitignore
@@ -0,0 +1,2 @@
+batik-bin-*.zip
+library/batik-all-*.jar
diff --git a/java/libraries/svg/.settings/org.eclipse.jdt.core.prefs b/java/libraries/svg/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 000000000..cd8d089a1
--- /dev/null
+++ b/java/libraries/svg/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,15 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=11
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
+org.eclipse.jdt.core.compiler.release=disabled
+org.eclipse.jdt.core.compiler.source=11
diff --git a/java/libraries/svg/build.xml b/java/libraries/svg/build.xml
index 99b5cb427..72fd368e5 100644
--- a/java/libraries/svg/build.xml
+++ b/java/libraries/svg/build.xml
@@ -6,27 +6,61 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
diff --git a/java/libraries/svg/library/batik-awt-util-1.8.jar b/java/libraries/svg/library/batik-awt-util-1.8.jar
deleted file mode 100644
index 740acb744..000000000
Binary files a/java/libraries/svg/library/batik-awt-util-1.8.jar and /dev/null differ
diff --git a/java/libraries/svg/library/batik-dom-1.8.jar b/java/libraries/svg/library/batik-dom-1.8.jar
deleted file mode 100644
index 4899b514d..000000000
Binary files a/java/libraries/svg/library/batik-dom-1.8.jar and /dev/null differ
diff --git a/java/libraries/svg/library/batik-ext-1.8.jar b/java/libraries/svg/library/batik-ext-1.8.jar
deleted file mode 100644
index d7c850b16..000000000
Binary files a/java/libraries/svg/library/batik-ext-1.8.jar and /dev/null differ
diff --git a/java/libraries/svg/library/batik-svggen-1.8.jar b/java/libraries/svg/library/batik-svggen-1.8.jar
deleted file mode 100644
index 9aaa826a4..000000000
Binary files a/java/libraries/svg/library/batik-svggen-1.8.jar and /dev/null differ
diff --git a/java/libraries/svg/library/batik-util-1.8.jar b/java/libraries/svg/library/batik-util-1.8.jar
deleted file mode 100644
index 23e362533..000000000
Binary files a/java/libraries/svg/library/batik-util-1.8.jar and /dev/null differ
diff --git a/java/libraries/svg/library/batik-xml-1.8.jar b/java/libraries/svg/library/batik-xml-1.8.jar
deleted file mode 100644
index 1101455a0..000000000
Binary files a/java/libraries/svg/library/batik-xml-1.8.jar and /dev/null differ