Content management system CMS管理的图像在某些重新加载时的高度和宽度为0
我正在使用复合C1 CMS v4.2更新1。在我的一些使用媒体部分和媒体部分的一些编程图像填充的页面中,我定期为所有从媒体部分出来的图像获取0的宽度和高度,除非我专门输入图像的宽度和高度。下面是以编程方式填充的图像的示例。我想我可以尝试通过代码填充高度和宽度,但是复合C1似乎使用下面的MediaURL()方法来实现这一点,在某些情况下,它恰好使它们为0。在CMS内容部分,当我特别添加高度和宽度时,它可以正常工作,但是WYSIWYG图像属性中没有高度和宽度对话框,因此您必须进入源代码并手动编辑IMG标记。希望我在这里犯了严重的错误,因为这对我们来说似乎是个问题Content management system CMS管理的图像在某些重新加载时的高度和宽度为0,content-management-system,c1-cms,Content Management System,C1 Cms,我正在使用复合C1 CMS v4.2更新1。在我的一些使用媒体部分和媒体部分的一些编程图像填充的页面中,我定期为所有从媒体部分出来的图像获取0的宽度和高度,除非我专门输入图像的宽度和高度。下面是以编程方式填充的图像的示例。我想我可以尝试通过代码填充高度和宽度,但是复合C1似乎使用下面的MediaURL()方法来实现这一点,在某些情况下,它恰好使它们为0。在CMS内容部分,当我特别添加高度和宽度时,它可以正常工作,但是WYSIWYG图像属性中没有高度和宽度对话框,因此您必须进入源代码并手动编辑IM
@{
string folderPath = CurrentPageNode.Url.Substring(10).Replace("/","_");
folderPath = "/" + folderPath;
var images = Data.Get<IImageFile>().Where(image => image.FolderPath == folderPath).OrderBy(image => image.FileName).ToList();
string cssClass = "";
}
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:f="http://www.composite.net/ns/function/1.0">
<head>
</head>
<body>
<div class="row">
@foreach (var image in images)
{
if (image.FileName.Length > 11 && image.FileName.ToLower().Substring(0,11) == "application")
{
cssClass = image.FileName.Substring(image.FileName.IndexOf("_")+1).Replace(".png","");
<div class="col-md-12">
<div class="application">
<a href="@image.Description">
<img src="@Html.C1().MediaUrl(image)" alt="@image.Title" />
</a>
<a href="@image.Description">
<div class="squareText @cssClass">@image.Title</div>
</a>
</div>
</div>
}
}
</div>
</body>
@{
字符串folderPath=CurrentPageNode.Url.Substring(10).替换(“/”,“”);
folderPath=“/”+folderPath;
var images=Data.Get().Where(image=>image.FolderPath==FolderPath).OrderBy(image=>image.FileName.ToList();
字符串cssClass=“”;
}
@foreach(图像中的var图像)
{
if(image.FileName.Length>11&&image.FileName.ToLower().Substring(0,11)=“应用程序”)
{
cssClass=image.FileName.Substring(image.FileName.IndexOf(“”)+1)。替换(“.png”,”);
}
}
所见即所得图像属性中没有“高度和宽度”对话框
在Visual Editor的页面上手动插入图像时,可以在“图像属性”对话框的“高级”选项卡上设置“最大宽度”和/或“最大高度”
(请参阅)
在标记中,它将向图像URL添加两个参数,例如:
<img src="~/media(40ef35a6-2ed9-4daa-a5db-c47ecc13e6d6)?mw=20&mh=20" />
<img src="~/media(@Image)" />
复合C1中的图像URL支持更多的参数(例如宽度为“w”,高度为“h”),您可以在构建它们时使用这些参数。有关参数的更多信息,请参见:
至于构建URL,在C1 Razor函数中,至少有两种方法可以做到这一点:
使用此选项时,例如:
<img src="~/media(40ef35a6-2ed9-4daa-a5db-c47ecc13e6d6)?mw=20&mh=20" />
<img src="~/media(@Image)" />
或
只需附加参数,甚至使用变量作为值。比如说,您的Razor函数有两个输入参数,如宽度和高度,您可以这样做:
<img src="~/media(@Image)?mw=@Width&@Height" />
<img src="@Html.C1().MediaUrl(@Image)?mw=@Width&@Height" />
希望所有这些信息都能帮助您完成任务。感谢您的回复,尽管我在提交此问题之前确实尝试了mw,mh属性。为了简洁起见,我把这个问题撇在了一边,尽管那可能是个错误。我只是尝试了w=45和h=45属性,但不幸的是,它也不能解决这个问题。我仍然需要使用标准的HTML宽度和高度属性,否则它会定期为我的图像指定宽度和高度0。