|
主题:[分享]增加KesionCMS/ESHOP X1.0 百度编辑器远程抓取图片自动缩放+添加水印功能 [收藏主题] | 转到: |
KesionCMS/ESHOP X1.0发布,修改了编辑器为百度编辑器,在复制web内容时能自动抓取远程图片并上传。但对于远程抓取的图片加水印和缩放功能有所欠缺,有时抓取的图片太大,有时图片上有水印,十分不爽,本来想发个贴图点省事,可是没人理会,只好自已动手了。研分了半天终于搞出来了,发出来分享一下,有需要的拿去:
修改文件:\editor\asp\action_crawler.asp 修改代码如下:(服务器需支持AspJpeg组件) '==============KESION 修改========================== urls = Split(Request.Item("source[]"), ", ") Set list = new ASPJson.Collection Set Jpeg = Server.CreateObject("Persits.Jpeg") '创建水印组件对象 For i = 0 To UBound(urls) up.UploadRemote( urls(i) ) Jpeg.Open Server.MapPath(up.FilePath) '图片地址 imgWidth = Jpeg.OriginalWidth imgHeight = Jpeg.OriginalHeight maxWidth=500 '控制图像最大宽度 if imgWidth>maxWidth then imgWidth = maxWidth imgHeight = Jpeg.OriginalHeight * maxWidth / Jpeg.OriginalWidth '按比例取图像高度 Jpeg.Width = imgWidth Jpeg.Height = imgHeight end if x=220 'x坐标,以图片右下角为原点 y=20 'y坐标,以图片右下角为原点 Jpeg.Canvas.Font.Size = 16 '水印字体大小 Jpeg.Canvas.Font.Bold = False '不加粗 Jpeg.Canvas.Font.Color = &H000000 '字体颜色 Jpeg.Canvas.Font.BkMode = &HFFFFFF '背景 Jpeg.Canvas.Print imgWidth-x, imgHeight-y, "Copyright (c) www.Kesion.com, Inc." '写水印字符 Jpeg.Save Server.MapPath(up.FilePath) '保存图片 Dim instance Set instance = new ASPJson.Collection instance.Add "state", up.State instance.Add "url", up.FilePath instance.Add "source", urls(i) list.Add i, instance Next Set Jpeg = Nothing '清除对象 Set json = new ASPJson 效果图: 另外,如果不需要加水印,又想去掉抓取的远程图片的水印,也可以用jpeg.Crop命令很方便地将图片水印切掉。 |
|
支持(0) | 反对(0) 顶端 底部 |
<上一主题 | 下一主题 > |