谈论一个关于ASP图片处理的问题。

freeweb 2009-07-24 03:01:48
用ASP处理图片一般就用ASPJPEG了,基本的操作我还是能搞定,现在有一个问题困扰了我很久。

图片的层叠问题,例如,在最上层是一个中间透明圆形区域的背景图片,在下一层有一张图片。然后怎样合成这两张图片为一张图片。说的简单一点就是,怎样给图片加上相框。

望CSDN的高手指点一下。谢谢
...全文
119 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjs1109 2009-07-24
  • 打赏
  • 举报
回复
膜拜高手来了
ChinaXtHuLang 2009-07-24
  • 打赏
  • 举报
回复
aspjpeg 半透明描边的实现函数

'参数说明
'big 原图路径(相对)
'small 生成图路径(相对)
'width_s 生成后宽度(数值型)
'height_s生成后高度(数值型)
'images/Alpha.jpg 为一个像素的白色块
'w 为边框宽度(数值型)
Function get_img(byval big,byval small,byval width_s,byval height_s,byval w)
If IsObjInstalled("Persits.Jpeg") Then
dim Jpeg,Path
dim x1,y1,x2,y2
Set Jpeg = Server.CreateObject("Persits.Jpeg")
Path = Server.MapPath(big)
Jpeg.Open Path
Jpeg.Interpolation = 2
Jpeg.Quality = 100
' 设置缩略图大小(这里比例设定为50%)
if Jpeg.OriginalWidth/Jpeg.OriginalHeight>=width_s/height_s then
if Jpeg.OriginalWidth>width_s then
Jpeg.height=height_s
Jpeg.width=(Jpeg.Originalwidth*height_s)/Jpeg.Originalheight
else
Jpeg.Width=Jpeg.OriginalWidth
Jpeg.Height=Jpeg.OriginalHeight
end if
else
if Jpeg.Originalheight>height_s then
Jpeg.Width=width_s
Jpeg.Height=(Jpeg.OriginalHeight*width_s)/Jpeg.OriginalWidth
else
Jpeg.Width=Jpeg.OriginalWidth
Jpeg.Height=Jpeg.OriginalHeight
end if
end if
x1=(Jpeg.Width-width_s)/2
y1=(Jpeg.height-height_s)/2
x2=x1+width_s
y2=y1+height_s
'切图
jpeg.crop x1,y1,x2,y2

Set Jpeg2 = Server.CreateObject("Persits.Jpeg")
Jpeg2.Open Server.MapPath("images/Alpha.jpg")

'上下
Jpeg2.Width=Jpeg.Width-2*w
Jpeg2.Height=w
Jpeg.DrawImage w,0, Jpeg2, 0.5, &HFF0000
Jpeg.DrawImage w,(Jpeg.Height-w), Jpeg2, 0.5, &HFF0000
'左右
Jpeg2.Width=w
Jpeg2.Height=Jpeg.Height
Jpeg.DrawImage 0,0, Jpeg2, 0.5, &HFF0000
Jpeg.DrawImage (Jpeg.Width-w),0, Jpeg2, 0.5, &HFF0000
' 保存缩略图到指定文件夹下
Jpeg.Save Server.MapPath(small)
' 注销实例
Set Jpeg = Nothing
get_img=small
else
get_img=big
end if
end function

'==================================================
'判断服务器是否支持该组件
'==================================================
Function IsObjInstalled(byval strClassString)
On Error Resume Next
IsObjInstalled = False
Err = 0
Dim xTestObj
Set xTestObj = Server.CreateObject(strClassString)
If Err = 0 Then IsObjInstalled = True
If Err = -2147352567 Then IsObjInstalled = True
Set xTestObj = Nothing
Err = 0
End Function

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧