新社区网站

通常,你会在正确的地方,但我们最近推出了一个全新的社区网站……为社区,受社区。

耶……带我去社区!

社区博客是社区成员的个人观点,绝不是DNN公司或DNN平台的官方立场。这是一个表达个人对DNNPlatform、社区及其生态系统的想法的地方。你有什么有用的信息想要与DNN社区分享吗?如果有,请联系

社区博客的使用由我们的社区博客指南-请在评论或发布之前阅读。


款Imagehandler

早在DNN imagehandler被集成到核心的时候,我就写了这个关于这些特性的文档。该文档附属于JIRA支持案例,但这不是开发人员或用户会关注选项和可能性的地方,因此我决定将其作为博客发布在dnnsoftware.com上。我不确定所有选项在最新版本中是否仍然有效,但我认为在此期间没有太大变化。希望你觉得有用!

DnnImageHandler文档

的附加语句来启用图像处理程序功能system.webServer /处理程序的部分. config

如果您输入以下图像url,可以使用图像处理程序:

http://mydomain.com/dnnimagehandler.ashx?mode=xyz¶m1=value1¶m2=value2.。

这里定义了几种模式:

  • profilepic-显示个人资料图片给一个给定的用户id(如果允许)或一个通用的“无头像”的形象
  • 文件-通过给定的文件名和路径或url显示图像
  • securefile-显示给定字段的图像(如果允许)。如果没有图像格式,则显示文件类型图标
  • 占位符-显示带有图像尺寸或文本的矩形

这些“模式”正在生成一幅图像。生成的图像可以通过其他参数进行修改。可用的修改有:

  • 调整-定义尺寸的结果图像与不同的调整大小模式,添加边框和彩色背景
  • 格式-定义生成图像的结果格式(jpg, png…)
  • γ-调整伽马值
  • 亮度-调整亮度值
  • 对比-调整对比度值
  • 灰度-转换为灰度图像
  • -转换为负图像
  • 旋转+翻转-旋转和/或翻转图像

没有图像

查询字符串参数NoImage允许用户指定图像文件的文件路径,我们希望在图像处理无法完成的情况下提供服务(即:尝试显示我没有作为特定用户访问的安全文件)。

如果不提供查询字符串NoImage,则系统将提供1x1像素的透明图像。文件路径仅限于以下文件夹(及其子文件夹)

  • DesktopModules
  • 门户网站
  • 图片

模式:Profilepic

profilepic模式向给定的用户id(如果允许)或通用的“无头像”图像显示个人资料图片。其功能与旧的概要文件相同。ashx处理程序。

参数:

名字 意义
用户标识 应显示其配置文件图像的用户ID。如果省略,则生成当前用户的头像。如果没有用户登录或不允许显示头像,则生成通用头像图像
 

模式:文件

文件模式根据给定的文件名显示图像,并带有路径或url或文件路径和索引(按字母顺序)。

参数:

名字 意义
文件 包含文件名的文件的相对路径,例如:/Portals/0/images/myimage.gif

请注意:出于安全考虑,查询字符串中提供的文件路径仅限于以下文件夹(及其子文件夹):

  • DesktopModules
  • 门户网站
  • 图片

或者:

名字 意义
url Url到图像(Url编码),例如:http%3A%2F%2Fwww.indisoftware.de%2FPortals%2F0%2Findilogo.png
 

模式:Securefile

securefile模式根据给定的字段(如果允许的话)显示图像。如果没有图像格式,则显示文件类型图标

参数:

名字 意义
文件标识

如果已登录的用户具有该文件的查看权限,则显示具有给定字段id的图像。如果文件不是图像文件,则生成一个图标(从file_icons /Sigma/ext%EXTENSION%)32 x32_standard.png

 (skin.css)  (1-icn.png)

模式:占位符

占位符模式显示带有图像尺寸或文本的矩形

参数:

名字 意义
w 像素宽度
h 高度(像素)
颜色 前景颜色
背景色 背景颜色
文本 要在图像上显示的文本。如果省略,则显示尺寸
 

附加模式扩展

模式是可扩展的!如果开发人员编写的dll包含派生自的类(例如:PercentTransform)

DotNetNuke.Services.GeneratedImage.ImageTransform

使用一个名为“value”的公共属性,他创建了一个百分比圆,如下所示:

图像

复制这个dll到DNN箱子文件夹中添加一个条目AppSettings的部分. config是这样的:

<添加关键= " DnnImageHandler。“价值= " MyNamespace百分比。% % transform, NameOfMyDll" />

(5)他能够调用imagehandler的URL语法像这样:

http://mydomain.com/DnnImagehandler.ashx?mode=percent&value=30

我的github项目BBImageHandler-8包括一堆这些扩展(例如条形码,图像从数据库等),所以如果你有兴趣创建自己的imagehandler扩展这将是一个很好的起点看!

过滤器:调整

使用不同的调整大小模式定义生成图像的尺寸,添加边框和彩色背景。

参数:

名字 意义
w 图像宽度
h 图像高度
大小 预定义的图像大小:xxs: 16x16, xs:32x32, s:50x50, l:64x64, xl:128x128, xxl:256x256
maxwidth 而不是宽度,这可以用来让图片保持原样,直到宽度达到最大值。
maxheight 而不是高度,这可以用来让图片保持原样,直到高度达到最大值。
resizemode
  • 适合Mode保持原始图像的宽高比,同时确保结果的尺寸不超过调整大小转换的最大值。(需要宽度或高度参数)
  • fitsquare以给定宽度作为其最长边(取决于图像方向)调整图像大小,并保持宽高比。图像将以选定的背景色居中(需要宽度参数,背景色可选)
  • 作物调整图像大小并删除部分图像,以确保结果的尺寸与转换指定的尺寸完全一致。(需要宽度和高度参数)
  • 填满在不保持宽高比的情况下,用给定的宽度或高度调整图像的大小。
背景色

背景或/和边框的颜色resizemodefitsquare适合

边境

边框宽度(像素)周围的图像(添加到宽度/高度)时resizemodefitsquare适合

 

过滤器:伽马

调整伽马值

参数:

名字 意义
γ 值的伽玛调整之间的0.2和5
< img src = " / dnnimagehandler.ashx ?模式= profilepic&用户id = 2,大小= xl&γ= 4 " / >

过滤器:亮度

调整亮度值

参数:

名字 意义
亮度 亮度调节值在-255到+255之间

过滤器:对比

调整对比度值

参数:

名字 意义
对比 在-100和+100之间的对比度调整值

过滤器:灰度

将图像转换为灰度

参数:

名字 意义
灰度 如果存在,图像将转换为灰度(需要虚拟值,例如“1”)

过滤器:反

将图像转换为其负数表示形式

参数:

名字 意义
如果存在,图像被反转(需要虚拟值,例如“1”)

过滤器:Rotateflip

旋转和/或翻转图像

参数:

名字 意义
rotateflip

RotateNoneFlipNone:指定不顺时针旋转和不翻转。
Rotate90FlipNone:指定90度顺时针旋转,不翻转。
Rotate180FlipNone:指定不翻转的顺时针180度旋转。
Rotate270FlipNone:指定不翻转的顺时针旋转270度。
RotateNoneFlipX:指定没有顺时针旋转,然后是水平翻转。
Rotate90FlipX:指定顺时针旋转90度,然后是水平翻转。
Rotate180FlipX:指定顺时针旋转180度,然后是水平翻转。
Rotate270FlipX:指定顺时针旋转270度,然后是水平翻转。
RotateNoneFlipY:指定没有顺时针旋转,然后是垂直翻转。
Rotate90FlipY:指定顺时针旋转90度,然后垂直翻转。
Rotate180FlipY:指定顺时针旋转180度,然后垂直翻转。
Rotate270FlipY:指定顺时针旋转270度,然后垂直翻转。
RotateNoneFlipXY:指定没有顺时针旋转,然后是水平和垂直翻转。
Rotate90FlipXY:指定顺时针旋转90度,然后是水平和垂直翻转。
Rotate180FlipXY:指定顺时针旋转180度,然后是水平和垂直翻转。
Rotate270FlipXY:指定顺时针旋转270度,然后是水平和垂直翻转。

  

配置

imagehandler有几个选项可以通过web.config中的配置进行设置。你可以在appSettings-section中设置你的选项:

以下选项可用:

名字 意义
EnableIpCount

默认值:真正的.如果为true,则将计算图像的每一代。如果IPCountMax没有更多的图像生成,直到IPCountPurgeInterval是。江南娱乐平台下江南app中国官方网站物理上在_App_Data/中有一个文件ipcount对于每个包含点击数的IP。当IPCountPurgeInterval结束,此文件被删除。

IpCountMax

默认值:50.在定义的时间跨度内允许的IP的最大点击数IPCountPurgeInterval

IPCountPurgeInterval

默认值:300.测量来自一个IP的点击数的秒数。

EnableServerCache

默认值:真正的.启用服务器端缓存文件夹_App_Data/中的图像图片

ServerCacheExpiration

默认值:180.直到从图像缓存文件夹中删除图像并重新生成图像。

EnableClientCache

默认值:真正的.启用图像的客户端缓存(响应304 http响应直到ClientCacheExpiration达到)

ClientCacheExpiration

默认值:600.秒缓存客户端站点上的图像。

AllowStandAlone

默认值:.如果为真,图像可以通过图像url独立显示。如果为false,则只显示集成在网页中的图像(referrer不是null),其他返回403(禁止)http状态码。

LogSecurity

默认值:.如果是真的,击中IPCountMaxAllowStandalone边界产生一个事件日志条目

AllowedDomains

默认值:空字符串.缺省情况下,允许所有网站作为引用。这里包括一个逗号分隔的域名列表,以限制你的图像嵌入到这些域名的页面(例如。mydomain.com, myotherdomain.net

ImageCompression

默认值:95.设置图像生成质量。取值范围为0 ~ 100。

评论

目前没有评论,请第一个发表评论。

评论形式

只有注册用户才能发表评论。

NewsArchives


Aderson Oliveira(22岁)
亚历克·惠廷顿(11岁)
亚历山德拉·戴维斯(3岁)
Alex Shirley(10岁)
安德鲁·霍夫林(3岁)
安德鲁·纳斯(30岁)
安迪·特里巴(1)
安东尼·格伦赖特(5岁)
安东尼奥·夏格里(28岁)
阿什·普拉萨德(37岁)
本·施密特(1)
本杰明·赫尔曼(25岁)
伯努瓦·萨顿(9岁)
贝丝·费尔堡(12岁)
比尔·沃克(36岁)
鲍勃·克鲁格(5岁)
波格丹·莱特斯库(1)
布莱恩·杜克斯(2岁)
白雪皑皑(1)
布鲁斯·查普曼(20岁)
布莱恩·安德鲁斯(1)
卡塔·康诺利(55岁)
查尔斯·纳斯(163)
克里斯·哈蒙德(第213届)
克里斯·帕特拉(55岁)
克林特·帕特森(108)
邝党(21岁)
丹尼尔·巴塞洛缪(2岁)
丹尼尔·梅特勒(181)
丹尼尔·瓦拉达斯(48岁)
戴夫·巴克纳(2岁)
大卫·波因德克斯特(12岁)
大卫·罗德里格斯(3岁)
萧耀文(1)
道格·豪厄尔(11岁)
Erik van Ballegoij(30岁)
恩斯特·彼得·塔明加(80岁)
弗朗西斯科·佩雷斯·安德烈斯(17岁)
杰夫·巴洛(12岁)
乔治·阿拉特拉什(12岁)
吉福德·沃特金斯(3)
吉尔·勒·皮戈彻(3)
伊恩·罗宾逊(7岁)
以色列·马丁内斯(17岁)
简·布洛姆奎斯特(2)
简·乔纳斯(3岁)
贾斯普雷特·巴蒂亚(1)
詹妮·梅里菲尔德(6岁)
乔·布林克曼(274)
约翰·米切尔(1)
乔恩·亨宁(14岁)
乔纳森·希利(4岁)
乔丹·库珀史密斯(1)
约瑟夫·克雷格(2岁)
马侃(1)
凯文贝吉(3岁)
凯利·福特(4岁)
肯·格里尔森(10岁)
凯文·施莱纳(6岁)
利·波因特(31岁)
洛林·杨(60岁)
Malik Khan (1)
马特·拉特利奇(2岁)
马蒂亚斯·施洛曼(16岁)
毛里西奥Márquez (5)
迈克尔·多克西(7岁)
迈克尔·托比什(3岁)
迈克尔·华盛顿(2002)
米格尔·加梅坦(3)
迈克·霍顿(19岁)
米歇尔·塞勒斯(40岁)
弥敦罗孚(3)
Navin V Nagiah(14岁)
n (31)
Nik Kalyani(14岁)
奥利弗·海因(1)
帕特里西奥·f·萨利纳斯(1)
帕特里克·瑞恩(1)
彼得·唐克(54岁)
菲利普·比德尔(135岁)
菲利普·贝克尔(4岁)
理查德·杜马斯(22岁)
罗伯特·J·柯林斯(5岁)
罗杰·塞尔温(8岁)
鲁本·洛佩兹(1)
莱恩·马丁内斯(1岁)
Sacha Trauwaen (1)
爱沙尼亚语(4)
Sanjay Mehrotra(9岁)
斯科特·麦卡洛克(1)
斯科特·施莱西尔(11岁)
斯科特·威尔金森(3岁)
斯科特·威尔海特(97岁)
塞巴斯蒂安·洛波德(80岁)
肖恩·沃克(237)
肖恩·梅哈菲(17岁)
斯蒂芬·卡尔曼(12岁)
Stefan Kamphuis(12岁)
史蒂夫·法比安(31岁)
史蒂文·费舍尔(1)
蒂莫·布鲁梅尔霍夫(24岁)
托尼·亨利克(3岁)
托斯滕·韦根(3岁)
第谷·德·沃德(4)
Vicenç Masanas(27岁)
Vincent Nguyen(3岁)
维塔利·科扎达耶夫(6岁)
威尔·摩根维克(40岁)
威尔·斯特罗尔(180岁)
威廉·塞弗伦斯(5岁)
什么是液体含量?
找出
什么是液体含量?
找出
什么是液体含量?
找出
Baidu
map