KindEditor Asp版 上传图片自动压缩

直接上代码。前提是:服务器上必需支持AspJpeg组件

upload_json.asp  修改 增加 自动压缩代码。


....... 以上省略.........

If Not fso.FileExists(filePath) Then
	showError("上传文件失败。")
else
	'缩小大图
	call ysbigpic(filePath)
End If

Response.AddHeader "Content-Type", "text/html; charset=UTF-8"
Set hash = jsObject()
hash("error") = 0
hash("url") = fileUrl
hash.Flush
Response.End

Function showError(message)
	Response.AddHeader "Content-Type", "text/html; charset=UTF-8"
	Dim hash
	Set hash = jsObject()
	hash("error") = 1
	hash("message") = message
	hash.Flush
	Response.End
End Function

Sub ysbigpic(FileName)
Dim bigpic,bigpicPath,fss,n_MaxWidth
Set bigpic = Server.CreateObject("Persits.Jpeg")
Set fss=createobject("scripting.filesystemobject")
'设置图片质量
bigpic.Interpolation=2   
bigpic.Quality=90   
' 图片位置
If fss.fileExists(FileName) then
	bigpic.Open FileName
	'下面是按比例缩放
	n_MaxWidth=1920

	'按比例取得缩略图宽度和高度
	Dim n_OriginalWidth, n_OriginalHeight '原图片宽度、高度
	Dim n_BuildWidth, n_BuildHeight '缩略图宽度、高度
	Dim n '缩小比例
	'修改Jpeg
	n_OriginalWidth = bigpic.Width
	n_OriginalHeight = bigpic.Height
	n = 0
	If n_OriginalWidth > n_MaxWidth Then
		n = n_OriginalWidth / n_MaxWidth
		'指定宽度和高度生成
		bigpic.Width = n_MaxWidth
		bigpic.Height = n_OriginalHeight / n
	End If
	' 保存文件
	bigpic.Save (FileName)
	' 注销对象
	Set bigpic = Nothing
End if
End Sub 


没有更多推荐了,返回首页