我正在尝试将模态中的Base64图像获取设置为我的身体HTML。
因此,在@section
渲染CSS的地方,我添加了以下代码:
@section Css {
<link href="@Url.Content("~/css/index.css")" rel="stylesheet" />
<style>
body {
background-color: @Model.bg_color;
background-image: url(data:image/png;base64,@Model.bg_image);
}
</style>
}
以@Model.bg_image
格式获取的图片采用正确的base64格式,因为通过在在线Base64转换器之一中设置其值即可生成正确的图片。
但是,当页面加载时,出现以下错误,而不是显示为背景图像:
GET data:image/png;base64,/9j/4AAQSkZJRgABAgEAAAAAAAD/7gAOQWRvYmUAZAAAAAAB/9sAQwAGBAQEBQQGBQUGCQYFBgkLCAYGCAsMCgoLCgoMEAwMDAwMDBAMDg8QDw4MExMUFBMTHBsbGxwfHx8fHx8fHx8f/9sAQwEHBwcNDA0YEBAYGhURFRofHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgBsgMAAwERAAIRAQMRAf/EAB0AAAEFAQEBAQAAAAAAAAAAAAUBAgMEBgcACAn/xABREAACAQMDAgQDBQYDBgMFAw0BAgMAEQQhEgUxQVEiEwZhcTKBkUIUB6GxwVIjM9FiFeFygkMkNPDxFpKissJT0mNzgzU2k7NUdCXiRCYXCP/EABoBAAMBAQEBAAAAAAAAAAAAAAABAgMEBQb/xAA4EQACAgIBAwIFAgUCBwEAAwAAARECIQMxQRIEUSJhcTITBfCBkaGxwULRFOFSYnKCIzPxokMV/9oADAMBAAIRAxEAPwDsvG8QmFNlSnJlyZMuX1WeU32ix8i26KL1ChKENsJCOyEDS5PTpQIU3ta97WG463tQBFl3MQ00BBNNCK& net::ERR_INVALID_URL
JSFiddle中的HTML
编辑:我刚刚注意到Model.bg_image
中返回的值与设置为base64的值不同,例如+
字符设置为+
,因此图像不是呈现
答案 0 :(得分:0)
您应该将其转换为字符串,尝试一下;
@{
string imgSrc = "";
if (Model.bg_image != null)
{
var base64 = Convert.ToBase64String(Model.bg_image);
imgSrc = String.Format("data:image/gif;base64,{0}", base64);
}
}
@section Css {
<link href="@Url.Content("~/css/index.css")" rel="stylesheet" />
<style>
body {
background-color: @Model.bg_color;
background-image: url(@imgSrc);
}
</style>
}
答案 1 :(得分:0)
JSFiddle中的Base64字符串包含HTML转义的public class PlanetSpawner : MonoBehaviour
{
public static List<PlanetSpawner> planetList = new List<PlanetSpawner>();
public PlanetSpawner(Vector3 aStartingCoord, GameObject planet)
{
GameObject.Instantiate(planet,aStartingCoord,new Quaternion(0,0,0,0));
planet.transform.position = aStartingCoord;
}
}
字符:
+
您可能想使用[...] a97WG463tQBFl3MQ00BBNNCK+ZxuByOLHB [...]
函数来防止ASP.NET转义Base64字符串:
@Html.Raw()