這些天研究了一下ASP的自動(dòng)添加圖片水印的方法。
因為原先我的圖片總是被盜鏈,因此我使用程序將圖片增加了水印,然而我查看了一下昨天和今天的網(wǎng)站日志記錄,發(fā)現我的圖片依舊被盜鏈嚴重。
兩天的時(shí)間,我的博客就有20多G的訪(fǎng)問(wèn)流量,圖片所在的目錄upload占用了18.6G,37萬(wàn)次點(diǎn)擊,而文章所在目錄只用了1.3G流量,4萬(wàn)次點(diǎn)擊,從來(lái)源看,以大站盜鏈的圖片所占流量最大,CSDN和BOKEE占前兩位,這兩個(gè)地址一共帶來(lái)4萬(wàn)多次盜鏈。
當然,如果徹底防止盜鏈,我以前也想過(guò)使用類(lèi)似ISAPI Rewrite的程序來(lái)實(shí)現,但實(shí)際使用后,我發(fā)現ISAPI Rewrite將所有的外部鏈接全部都禁止了,但是我并不想禁用全部外部鏈接,因此還是最終沒(méi)有使用,不過(guò)如果現在這種盜鏈情況繼續進(jìn)行的話(huà),我不得不考慮重新啟用ISAPI Rewrite這個(gè)程序了。
下面是我使用程序來(lái)增加水印的方法,雖然以我目前的使用效果看,是比較失敗的案例。
增加水印使用的是一個(gè)名叫ASPJPEG的ASP組件,我是在OBlog的網(wǎng)站上下載的,版本是1.5版本,使用這個(gè)圖象處理組件,可以輕松地做出圖片的縮略圖和為圖片加上水印功能。下面簡(jiǎn)單介紹一下使用方法:
先要到Oblog的下載頁(yè)面上,在“OBLOG相關(guān)組件下載”處,下載AspJpeg v1.5.0.0,然后執行下載得到的文件,安裝該組件。
然后在A(yíng)SP代碼里增加一點(diǎn)點(diǎn)代碼即可,增加的位置可以放在上傳圖片完成后,取得圖片地址,進(jìn)行修改。對于Z-Blog的使用者,直接將下面代碼復制到c_system_lib.asp文件的TUpLoadFile類(lèi)中的Upload函數的結尾即可實(shí)現水印功能。
1、為圖片加入水印功能
Dim Jpeg
Set Jpeg = Server.CreateObject("Persits.Jpeg") ' 建立對象
Jpeg.Open BlogPath & "/upload/" & FileName ' 圖片所在位置
Jpeg.Canvas.Font.Color = &H000000 ' 顏色,這里是設置成:黑
Jpeg.Canvas.Font.Family = "方正隸變簡(jiǎn)體" ' 設置字體
Jpeg.Canvas.Font.Bold = False '是否設置成粗體
Jpeg.Canvas.Font.Size = 26 '字體大小
Jpeg.Canvas.Font.Quality = 4 ' 文字清晰度
Jpeg.Canvas.Print Jpeg.OriginalWidth/2-170,Jpeg.OriginalHeight-30, "
Jpeg.Save BlogPath & "/upload/" & FileName ' 保存文件
Set Jpeg = Nothing 2、為圖片制作縮略圖
Dim Jpeg
Set Jpeg = Server.CreateObject("Persits.Jpeg") ' 建立對象
Jpeg.Open BlogPath & "/upload/" & FileName ' 圖片所在位置
Jpeg.Width = Jpeg.OriginalWidth / 2
Jpeg.Height = Jpeg.OriginalHeight / 2
' 設置縮略圖大?。ㄟ@里比例設定為50%),也可以給他準確的數值,比如Jpeg.Width=120
Jpeg.Save BlogPath & "/upload/" & FileName ' 保存文件
Set Jpeg = Nothing