分享你我的心得.
共乘一片美好网络.

Persits AspJpeg 1.8轻松实现透明文字水印

从AspJpeg1.8 版本开始,AspJpeg 提供了比 PrintText 更为灵活的文本绘图方法PrintTextEx,PrintTextEx 使用FreeType?开源
程序库,可以在任何背景上呈现高品质的反锯齿文本。

这是一个ASP版本的利用PrintTextEx方法产生文字透明水印简单示例程序:

 

  1. <%   
  2. Dim objJpeg   
  3. Dim strText   
  4. Set objJpeg = Server.CreateObject("Persits.Jpeg")       
  5. objJpeg.Open Server.MapPath("t.jpg")           
  6. strText = "Copyright © 2008 Abo BloG"  
  7. objJpeg.Canvas.Font.Size = 30   
  8. objJpeg.Canvas.Font.Color = &HFF0000    ‘十六进制颜色值   
  9. objJpeg.Canvas.Font.Opacity = 0.7    ‘不透明度,1为不透明   
  10. objJpeg.Canvas.PrintTextEx strText, objJpeg.Width/2, objJpeg.Height-20, objJpeg.WindowsDirectory & "\Fonts\Arial.ttf"    
  11. objJpeg.Save Server.MapPath("tt.jpg")   
  12. Set objJpeg = Nothing  
  13. %>  

PrintTextEx 方法参考:
Function PrintTextEx(Text As String, X As Long, Y As Long, FontPath As String) As Long

Text – 要打印的文字字符串(Unicode格式),如果含有CR/LR字符则多行显示。
X, Y – 打印位置,XY轴坐标。
FontPath – 指定字体文件的物理路径。只要知道字体路径即可,并不需要系统注册。

返回值:返回文本宽度,如果字符串分割为多行,则返回宽度最长的。

以下字体属性影响PrintTextEx

Font.Color – 指定当前文字颜色,以一个十六进制值来表示,例如:&HFF0000FF 蓝色
Font.Rotation – 旋转角度
Font.Size – 指定文字大小,单位像素(px)
Font.Spacing – 行距
Font.Width – 指定文本宽度,超出自动换行。
Font.Align – 指定文本对齐方式。0-左(默认),1-右,2-居中,3-两端对齐,当值为非0时,必须指定Font.Width
Font.Opacity – 指定文本的不透明度,有效值范围[0-1],0完全透明,1完全不透明
 

赞(0)
未经允许不得转载:小叶白龙博客 » Persits AspJpeg 1.8轻松实现透明文字水印
分享到: 更多 (0)

评论 670

评论前必须登录!