From 8bcff5841ccd7be8b624104438217d2b0ea56670 Mon Sep 17 00:00:00 2001 From: bobwoco Date: Sun, 29 Oct 2023 20:39:54 -0500 Subject: [PATCH] gui: improved svg Refactor css file URIs to comply with library change (#11366) Co-authored-by: Ethan Ward --- .../src/main/java/org/mage/card/arcane/SvgUtils.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Mage.Client/src/main/java/org/mage/card/arcane/SvgUtils.java b/Mage.Client/src/main/java/org/mage/card/arcane/SvgUtils.java index 00447ca2cf0..07558e7dcb3 100644 --- a/Mage.Client/src/main/java/org/mage/card/arcane/SvgUtils.java +++ b/Mage.Client/src/main/java/org/mage/card/arcane/SvgUtils.java @@ -21,6 +21,8 @@ import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.io.InputStream; +import java.nio.file.Files; +import java.util.Base64; import static org.mage.plugins.card.utils.CardImageUtils.getImagesDir; @@ -111,7 +113,8 @@ public class SvgUtils { // css settings for svg SvgUtils.prepareCss(cssFileName, cssAdditionalSettings, false); File cssFile = new File(SvgUtils.getSvgTempFile(cssFileName)); - + byte[] cssFileContent = Files.readAllBytes(cssFile.toPath()); + String cssDataURI = "data:text/css;base64," + Base64.getEncoder().encodeToString(cssFileContent); TranscodingHints transcoderHints = new TranscodingHints(); // resize @@ -138,7 +141,7 @@ public class SvgUtils { transcoderHints.put(ImageTranscoder.KEY_DOCUMENT_ELEMENT_NAMESPACE_URI, SVGConstants.SVG_NAMESPACE_URI); transcoderHints.put(ImageTranscoder.KEY_DOCUMENT_ELEMENT, "svg"); - transcoderHints.put(ImageTranscoder.KEY_USER_STYLESHEET_URI, cssFile.toURI().toString()); + transcoderHints.put(ImageTranscoder.KEY_USER_STYLESHEET_URI, cssDataURI); try { TranscoderInput input = new TranscoderInput(svgFile);