我想在網頁中顯示Base64編碼的SVG圖片。該圖像是使用Ruby Base64編碼的圖片不顯示
str = Base64.encode64 '<svg> ... </svg>'
編碼並使用
<img src="data:image/svg+xml;base64,"+str >
的瀏覽器不顯示該圖片顯示。然而,如果我使用JavaScript BTOA()函數以編碼串,並使用
$("body").append("img").attr("src", "data:image/svg+xml;base64,"+ btoa("<svg> .. </svg>"));
是完全顯示的圖像顯示。 對於相同的輸入,Ruby輸出和JS輸出之間也有一些差異。我也試過了encode64的嚴格和urlsafe版本。他們都沒有工作。我該如何解決這個問題?
當您加載頁面時,控制檯中的任何錯誤? – Slicedpan
嘗試指定編碼,例如:'data:image/svg + xml; charset = utf-8; base64,'如果這不起作用,請將您的ruby編碼字符串通過base64解碼器並檢查輸出(缺少字符和這樣)。 – Duopixel