【问题标题】:Orchard Blog Post Media Picker Image Resized果园博客帖子媒体选择器图像调整大小
【发布时间】:2014-11-15 13:20:08
【问题描述】:
昨晚我花了大约 3 小时试图确定为什么我通过媒体库选择器字段上传的图像在博客文章中显示时一直调整为 200x200。
上传后它没有调整大小,如果我将同一张图片插入到博客文章中,它会保留原始大小。
我没有做任何特别的事情,我只是通过添加媒体库选择器字段来编辑博客文章内容定义。当我创建新的博客文章时,我点击添加按钮来选择媒体,然后发布文章。
查看示例屏幕截图:http://imgur.com/Ju3Sryp
感谢您的意见!
【问题讨论】:
标签:
image
post
content-management-system
orchardcms
blogs
【解决方案1】:
默认情况下,当您显示媒体库选择器字段时,它由Modules/Orchard.MediaLibrary/Views/FieldsMediaLibraryPicker.cshtml 呈现。该模板循环遍历字段中的媒体部分,并调用Display(BuildDisplay(content, "Summary"))。这为该字段指向的每个媒体内容项构建了形状。在您的情况下,这些形状之一将是 Parts_Image 形状。请注意,在 BuildDisplay 调用中,传入了“Summary”显示类型。这意味着将使用 Parts/Image.Summary.cshtml 模板来呈现每个图像。该模板具有以下代码来呈现图像:
<img width="200" height="200" alt="@mediaPart.AlternateText"
src="@Display.ResizeMediaUrl(
Width: 200, Height: 200, Mode: "crop",
Alignment: "middlecenter", Path: mediaPart.MediaUrl)" />
这就是将图像大小调整为 200x200 裁剪缩略图的原因。
如果这不是您想要的,您将不得不覆盖其中一个模板。我建议为您一直使用的特定文件名创建FieldsMediaLibraryPicker.cshtml 的替代项,并在代码中将显示类型从“摘要”更改为“详细信息”。这样,Image.cshtml 将被用于每个图像,并且不会进行任何大小调整。
【解决方案2】:
默认情况下,图像会调整大小。您应该启用形状跟踪模块而不是重新加载页面而不是从页面底部展开形状跟踪工具而不是单击图像而不是创建和更改替代。