AspJpeg 2.0使用教程(GIF篇)

2.0最新新特性就是支持Gif动态图像。

/techuf/200896203158780.gif

这是原始图片

  1. <%  
  2. '直接输出  
  3. Dim Jpeg,Gif  
  4. Set Jpeg = Server.CreateObject("Persits.Jpeg")  
  5. Set Gif = Jpeg.Gif  
  6.     Gif.Open Server.MapPath("demo.gif")  
  7.     Gif.SendBinary  
  8. Set Gif=Nothing 
  9. Set Jpeg=Nothing 
  10. %> 

/techuf/20089620320490.gif

这是加了水印的

  1. <%  
  2. '加文字水印  
  3. Dim Jpeg,Gif  
  4. Set Jpeg = Server.CreateObject("Persits.Jpeg")  
  5. Set Gif = Jpeg.Gif  
  6.     Gif.Open Server.MapPath("demo.gif")  
  7.     Gif.PenColor = 201  
  8.     Gif.FontSize = 13  
  9.     Gif.FontFamily = "Tahoma" 
  10.     Gif.PrintText Gif.Width-80,Jpeg.Gif.Height-16, "FJ126.NET 蓝雨" 
  11.     Gif.SendBinary  
  12. Set Gif=Nothing 
  13. Set Jpeg=Nothing 
  14. %> 

/techuf/20089620321740.gif

这是缩略图效果,可以等比例缩略也可以按指定大小缩略,当然,也可以放大。

/techuf/20089620322516.gif

100*100

/techuf/20089620323571.gif

100*200

/techuf/20089620324154.gif

200*200

/techuf/20089620325447.gif

250*100

http://fj126.net/?/blog/file/0807121009061735.gif

放大的效果

  1. <%  
  2. '动态图片缩小放大  
  3. Dim Jpeg,Gif  
  4. Set Jpeg = Server.CreateObject("Persits.Jpeg")  
  5. Set Gif = Jpeg.Gif  
  6.     Gif.Open Server.MapPath("demo.gif")  
  7.     Gif.Resize Gif.Width \2  
  8.     Gif.SendBinary  
  9. Set Gif=Nothing 
  10. Set Jpeg=Nothing 
  11. %> 

最新的图片合并为动态图片功能

/techuf/20089620328687.jpg/techuf/20089620328686.jpg/techuf/20089620328529.jpg/techuf/20089620329990.jpg
/techuf/20089620329582.jpg/techuf/200896203210256.jpg/techuf/200896203210863.jpg/techuf/200896203210697.jpg

合并后效果

/techuf/200896203211791.gif

代码如下:

  1. <%  
  2. '多图动画输出  
  3. Dim Jpeg,Gif  
  4. Set Jpeg = Server.CreateObject("Persits.Jpeg")  
  5. Set Gif = Jpeg.Gif  
  6.  
  7.     Dim FileNames(3)  
  8.         FileNames(0) = "1.jpg" 
  9.         FileNames(1) = "2.jpg" 
  10.         FileNames(2) = "3.jpg" 
  11.  
  12.     Gif.Width = 100  
  13.     Gif.Height = 100  
  14.  
  15.     For i = 0 To 2  
  16.         Jpeg.Open Server.MapPath(FileNames(i))  
  17.         Jpeg.PreserveAspectRatio = True 
  18.         if Jpeg.OriginalWidth > 100 or Jpeg.OriginalHeight > 100 Then 
  19.             if Jpeg.OriginalWidth > Jpeg.OriginalHeight Then 
  20.                Jpeg.Width = 100  
  21.             Else 
  22.                Jpeg.Height = 100  
  23.             End if 
  24.         End if 
  25.     Gif.AddImage Jpeg, (100 - Jpeg.Width) / 2, (100 - Jpeg.Height) / 2  
  26.     Gif.DisposalMethod =2  
  27.     Next 
  28.     Gif.SendBinary  
  29. Set Gif=Nothing 
  30. Set Jpeg=Nothing 
  31. %> 

最实用的莫过于Gif图片生成

/techuf/200896203213673.gif

代码比较复杂,需要花点时间去适应

  1. <%  
  2. '生成动态图片  
  3. Dim Jpeg,Gif  
  4. Set Jpeg = Server.CreateObject("Persits.Jpeg")  
  5. Set Gif = Jpeg.Gif  
  6. Dim MarketShare  
  7.     MarketShare = 6  
  8. For i = 1 to 5  
  9.     Gif.AddFrame 300, 200, 0, 0  
  10.     Gif.PenColor = 10  
  11.     Gif.BrushColor = 10  
  12.     Gif.DrawBar 0, 0, 300, 200  
  13.     Gif.PenColor = 201  
  14.     Gif.FontFamily = "Tahoma" 
  15.     Gif.FontSize = 13  
  16.     Gif.PrintText 60,13, "AspJpeg 2.0 生成动态图像测试" 
  17.     Gif.PrintText Gif.Width-85,Jpeg.Gif.Height-16, "FJ126.NET 蓝雨" 
  18.     Gif.PrintText 120, 50, 2003 + i  
  19.     Gif.PenColor = 0  
  20.     Gif.BrushColor = 30  
  21.     Gif.DrawPie 150, 130, 50, 0, MarketShare * 360 / 100  
  22.     Gif.BrushColor = 20  
  23.     Gif.DrawPie 150, 130, 50, MarketShare * 360 / 100, 360  
  24.     Gif.PenColor = 210  
  25.     Gif.PrintText 200, 100, MarketShare & "%" 
  26.     MarketShare = MarketShare * 2 - 3  
  27.     if i = 5 then Gif.Delay = 300  
  28. Next 
  29. Gif.SendBinary  
  30. %> 

上面的实例代码全部都是直接输出,如果需要保存处理后的图片,直接把代码里面Gif.SendBinary换成Gif.Save Server.MapPath("rotation.gif")即可!

提供下AspJpeg2.0的注册版下载:

PS:安装后没用是因为你没给ASPJPEG组件目录权限,请给于目录于Everyone读取的权限。

转自:蓝雨设计 http://fj126.net/blog/html/204/index.html