ImageClass.asp
上传用户:qfkgdy
上传日期:2020-06-18
资源大小:1888k
文件大小:6k
源码类别:

手机WAP编程

开发平台:

ASP/ASPX

  1. <%
  2. Class ImageClass
  3. Private Sub Class_Initialize
  4. End Sub
  5. Sub zoom2(ByVal path,ByVal spath,ByVal width,ByVal height)
  6. Call (new FileClass).copy(path,spath)
  7. End Sub
  8. '====== 缩略图 ======
  9. 'path:原始图路径
  10. 'path2:缩略图路径
  11. 'width:缩略图宽
  12. 'height:缩略图高
  13. Sub zoom(ByVal path,ByVal spath,ByVal width,ByVal height)
  14. Dim objJpeg,intWidth,intHeight
  15. Set objJpeg=Server.CreateObject("Persits.Jpeg")
  16. path=Server.MapPath(path)
  17. objJpeg.Open path
  18. if(objJpeg.originalWidth>width) then
  19. intWidth = width
  20. intHeight=objJpeg.originalHeight*width/objJpeg.originalWidth
  21. else
  22. intWidth=objJpeg.originalWidth
  23. intHeight=objJpeg.originalHeight
  24. end if
  25. ' if(intHeight>height) then
  26. ' objJpeg.width=intWidth*height/intHeight
  27. ' objJpeg.height=height
  28. ' else
  29. ' objJpeg.width=intWidth
  30. ' objJpeg.height=intHeight
  31. ' end if
  32. objJpeg.width=width
  33. objJpeg.height=height
  34. if(spath="") then
  35. spath=path
  36. else
  37. spath=Server.MapPath(spath)
  38. end if
  39. objJpeg.save spath
  40. Set objJpeg=nothing
  41. End Sub
  42. '====== 打水印 ======
  43. 'path:原始图路径
  44. 'wpath:生成图路径,若为空则覆盖原始图。
  45. 'text:水印文字
  46. 'position:水印位置,0为自定义;1为左上角;2为右上角;3为左下角;4为右下角;5为居中。
  47. 'px:左右移位,若position为0则为水印X坐标。
  48. 'py:上下移位,若position为0则为水印Y坐标。
  49. 'font_color:文字颜色
  50. 'font_family:文字字体
  51. 'font_size:文字字号
  52. 'font_bold:是否加粗
  53. 'font_shadow:文字阴影颜色,为空则不加阴影。
  54. 'font_background:文字背景颜色,为空则不加背景。
  55. Sub water(ByVal path,ByVal wpath,ByVal text,ByVal position,ByVal px,ByVal py,ByVal font_color,ByVal font_family,ByVal font_size,ByVal font_bold,ByVal font_shadow,ByVal font_background)
  56. Dim objJpeg
  57. Set objJpeg=Server.CreateObject("Persits.Jpeg")
  58. path=Server.MapPath(path)
  59. objJpeg.Open path
  60. if(wpath<>"") then
  61. path=Server.MapPath(wpath)
  62. end if
  63. if(font_color="") then font_color="FFFFFF"
  64. font_color="&H"&font_color
  65. if(font_family="") then font_family="verdana"
  66. if(font_size="" or font_size=0) then font_size=12
  67. if(font_bold="") then
  68. font_bold=true
  69. else
  70. font_bold=false
  71. end if
  72. if(font_bold="true") then font_bold=true
  73. objJpeg.Canvas.Font.color=font_color
  74. objJpeg.Canvas.Font.family=font_family
  75. objJpeg.Canvas.Font.size=font_size
  76. objJpeg.Canvas.Font.bold=font_bold
  77. if(font_shadow<>"") then
  78. objJpeg.Canvas.Font.shadowColor="&H"&font_shadow
  79. objJpeg.Canvas.Font.shadowXoffset=1 '水印文字阴影向右偏移的像素值,输入负值则向左偏移。
  80. objJpeg.Canvas.Font.shadowYoffset=1 '水印文字阴影向下偏移的像素值,输入负值则向右偏移。
  81. end if
  82. objJpeg.Canvas.Font.quality=4 '水印文字的清晰度,从0~4
  83. if(font_background<>"") then
  84. objJpeg.Canvas.Font.BkColor="&H"&font_background
  85. objJpeg.Canvas.Font.BkMode="Opaque"
  86. end if
  87. Dim font_width,font_height,px2,py2
  88. font_width=len(text)*(font_size/2)
  89. font_height=font_size
  90. select case position
  91. case 0:px2=px:py2=py
  92. case 1:px2=0+px:py2=0+py
  93. case 2:px2=objJpeg.width-font_width-px:py2=0+py
  94. case 3:px2=0+px:py2=objJpeg.height-font_height-py
  95. case 4:px2=objJpeg.width-font_width-px:py2=objJpeg.height-font_height-py
  96. case 5:px2=(objJpeg.width-font_width)/2:py2=(objJpeg.height-font_height)/2
  97. end select
  98. objJpeg.Canvas.print px2,py2,text
  99. '====== 边框 ======
  100. 'objJpeg.Canvas.Pen.color=&H000000 '画笔颜色
  101. 'objJpeg.Canvas.Pen.width=2 '画笔宽度
  102. 'objJpeg.Canvas.Brush.solid=false '加粗
  103. 'objJpeg.Canvas.Bar 1,1,objJpeg.width,objJpeg.height
  104. '====== 边框 ======
  105. objJpeg.save path
  106. Set objJpeg=nothing
  107. End Sub
  108. '====== 图片合并 ======
  109. 'path:原始图路径
  110. 'path2:图片水印路径
  111. 'wpath:生成图路径,若为空则覆盖原始图。
  112. 'position:水印位置,0为自定义;1为左上角;2为右上角;3为左下角;4为右下角;5为居中。
  113. 'px:左右移位,若position为0则为水印X坐标。
  114. 'py:上下移位,若position为0则为水印Y坐标。
  115. 'width:水印图片宽度,若为空则保持原始尺寸;高度按比例缩放。
  116. 'transparent:是否为透明水印
  117. 'opacity:透明度(0-1),0为完全透明;1为不透明。
  118. Sub com(ByVal path,ByVal path2,ByVal wpath,ByVal position,ByVal px,ByVal py,ByVal width,ByVal transparent,ByVal opacity)
  119. Dim objJpeg,objJpeg2
  120. Set objJpeg=Server.CreateObject("Persits.Jpeg")
  121. path=Server.MapPath(path)
  122. objJpeg.Open path
  123. if(wpath<>"") then
  124. path=Server.MapPath(wpath)
  125. end if
  126. Set objJpeg2=Server.CreateObject("Persits.Jpeg")
  127. path2=Server.MapPath(path2)
  128. objJpeg2.Open path2
  129. if(width<>"" and width<>0) then
  130. objJpeg2.width=width
  131. objJpeg2.height=objJpeg2.width*objJpeg2.originalHeight/objJpeg2.originalWidth
  132. end if
  133. Dim px2,py2
  134. select case position
  135. case 0:px2=px:py2=py
  136. case 1:px2=0+px:py2=0+py
  137. case 2:px2=objJpeg.width-objJpeg2.width-px:py2=0+py
  138. case 3:px2=0+px:py2=objJpeg.height-objJpeg2.height-py
  139. case 4:px2=objJpeg.width-objJpeg2.width-px:py2=objJpeg.height-objJpeg2.height-py
  140. case 5:px2=(objJpeg.width-objJpeg2.width)/2:py2=(objJpeg.height-objJpeg2.height)/2
  141. end select
  142. if(opacity="") then
  143. opacity=1
  144. else
  145. opacity=opacity/100
  146. end if
  147. if(transparent) then
  148. transparent=&Hffffff
  149. end if
  150. '倒数第二个参数为透明度,最后一个为抽取颜色
  151. objJpeg.drawImage px2,py2,objJpeg2,opacity,transparent
  152. objJpeg.save path
  153. Set objJpeg2=nothing
  154. Set objJpeg=nothing
  155. End Sub
  156. Private Sub Class_Terminate
  157. End Sub
  158. End Class
  159. %>