如何动态更改Sitecore中的图像大小?

时间:2013-04-23 19:32:36

标签: sitecore sitecore6

我创建了一个Web服务,并从sitecore6.6获得了imagefield。现在我想动态地改变图像的宽度和高度,以便我有动态的大图像。有近1000张图片需要改变尺寸。任何帮助...

1 个答案:

答案 0 :(得分:13)

您可以在图片的网址中使用多个查询字符串参数,让Sitecore修改图片。该图片必须是Sitecore Media项目。

以下是支持的查询字符串参数列表:

  • w:宽度(以像素为单位)
  • h:像素高度
  • mw:最大宽度(以像素为单位)
  • mh:最大高度(以像素为单位)
  • la:语言(默认为上下文语言)
  • vs:版本(默认为最新版本)
  • db:数据库名称(默认为上下文数据库)
  • bc:背景颜色(默认为黑色)
  • as:允许拉伸(as = 1)
  • sc:按浮点数进行缩放(sc = .25 = 25%)
  • :缩略图(thn = 1)
  • dmc:禁用媒体缓存,包括检索和存储(dmc = 1)

在您的情况下,您可以使用例如?as = 1& w = 600来将图像大小调整为600px宽。

您也可以通过编程方式在创建mediaUrl时设置MediaUrlOptions:

var mediaOptions = new MediaUrlOptions {AllowStretch = true, Width = 600};
var mediaUrl = MediaManager.GetMediaUrl(mediaItem, mediaOptions);