From e4e175afd1308d77a04efa66b8dc1410ec99ec4f Mon Sep 17 00:00:00 2001 From: Nicolas Adment <39568358+nadment@users.noreply.github.com> Date: Fri, 23 Aug 2024 18:07:28 +0200 Subject: [PATCH] Locale used by the system generates incorrect SVG syntax #4240 --- .../java/org/apache/hop/core/svg/HopSvgGraphics2D.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/org/apache/hop/core/svg/HopSvgGraphics2D.java b/core/src/main/java/org/apache/hop/core/svg/HopSvgGraphics2D.java index 3236b2e8625..cfa04fb96bb 100644 --- a/core/src/main/java/org/apache/hop/core/svg/HopSvgGraphics2D.java +++ b/core/src/main/java/org/apache/hop/core/svg/HopSvgGraphics2D.java @@ -23,6 +23,8 @@ import java.awt.font.TextLayout; import java.io.StringWriter; import java.text.DecimalFormat; +import java.text.DecimalFormatSymbols; +import java.util.Locale; import javax.xml.transform.OutputKeys; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerException; @@ -44,8 +46,12 @@ public class HopSvgGraphics2D extends SVGGraphics2D { private static final String W3_URL = "http://www.w3.org/2000/xmlns/"; + private final DecimalFormat formater; + public HopSvgGraphics2D(Document domFactory) { super(domFactory); + + formater = new DecimalFormat("0.###", DecimalFormatSymbols.getInstance(Locale.ENGLISH)); } public DOMGroupManager getDomGroupManager() { @@ -92,7 +98,7 @@ public String toXml() throws TransformerException { } private String format(double d) { - return new DecimalFormat("0.###").format(d); + return formater.format(d); } /**