Aspjpeg是一個功能強大的圖像處理組件,它可以很容易地制作縮略圖和添加水印圖像,那么Aspjpeg添加水印完整的使用方法大家清楚嗎?別著急,今天就跟著錯新技術頻道小編來了解吧!
下面簡單介紹一下使用方法:
您先要執行下載得到的exe文件,安裝該組件
1、為圖片制作縮略圖
<%?///'?建立實例
Dim?Jpeg,Path
Set?Jpeg?=?Server.CreateObject("Persits.Jpeg")
///'?圖片所在位置
Path?=?Server.MapPath("images")?&?"http:////clock.jpg"
///'?打開
Jpeg.Open?Path
///'?設置縮略圖大小(這里比例設定為50%)
Jpeg.Width?=?Jpeg.OriginalWidth?/?2
Jpeg.Height?=?Jpeg.OriginalHeight?/?2
///'?保存縮略圖到指定文件夾下
Jpeg.Save?Server.MapPath("images")?&?"http:////clock_small.jpg"
///'?注銷實例
Set?Jpeg?=?Nothing
%>?>
?
2、為圖片加入水印功能
<%
Dim?Jpeg
///'?建立實例
Set?Jpeg?=?Server.CreateObject("Persits.Jpeg")
///'?打開目標圖片
Jpeg.Open?Server.MapPath("images/dodge_viper.jpg")
///'?添加文字水印
Jpeg.Canvas.Font.Color?=?&HFF0000///'?紅色
Jpeg.Canvas.Font.Family?=?"宋體"
Jpeg.Canvas.Font.Bold?=?True??
Jpeg.Canvas.Print?10,?10,?"Copyright?(c)?Cnmaya.org"
///'?保存文件
Jpeg.Save?Server.MapPath("images/dodge_viper_framed.jpg")
///'?注銷對象
Set?Jpeg?=?Nothing
%>?
上次做過圖片水印,效果很差,沒辦法把圖片弄成背景透明的,用背景透明gif會自動填充成白色。用去掉某種顏色的功能,圖片顏色總是不純,出來的效果斑斑點點。今天靈機一動,把這兩個結合起來,用背景透明的gif,并且抽取水印底色,果然成功了!
????ogvbox.Canvas.Pen.Color??=?&H000000??///'//?邊框的顏色
????ogvbox.Canvas.Pen.Width??=?1????///'//?邊框的粗細
????ogvbox.Canvas.Brush.Solid?=?False???///'//?圖片邊框內是否填充顏色
????ogvbox.DrawImage?ogvbox.Width-210,?ogvbox.Height-74,?Logobox??,0.3,&HFFFFFF????///'//?加入圖片的位置坐標(添加水印圖片),我用圖片大小減去水印大小,把水印加在右下角。參數順序為:水平坐標,垂直坐標,水印圖片地址,水銀透明度,抽取顏色(&H表示16進制)
????ogvbox.Canvas.Bar?0,?0,?ogvbox.Width,?ogvbox.Height?///'//?圖片邊框線的位置坐標和大小
????ogvbox.Save?Server.MapPath(imagename)??///'//?生成文件
/'//------Pollener.com?AspJpeg組件的預覽和水印生成------開始------
/'創建預覽圖片:call?CreateView(原始文件的路徑,預覽文件名及路徑)
Sub?CreateView(imagename,tempFilename)
/'定義變量。
Dim?PreviewImageFolderName
Dim?ogvbox,objFont
Dim?Logobox,LogoPath
LogoPath?=?Server.MapPath("images")?&?"http://shuiyin.gif"??/'//加入圖片所在路徑及文件名(我的是論壇//images//shuiyin.gif)。
Select?Case?upload_ViewType
Case?0
/'---------------------CreatePreviewImage---------------
set?ogvbox?=?Server.CreateObject("CreatePreviewImage.cGvbox")
ogvbox.SetSavePreviewImagePath=Server.MapPath(tempFilename)???/'預覽圖存放路徑。
ogvbox.SetPreviewImageSize?=SetPreviewImageSize??????/'預覽圖寬度。
ogvbox.SetImageFile?=?trim(Server.MapPath(imagename))????/'imagename原始文件的物理路徑。
/'創建預覽圖的文件。
If?ogvbox.DoImageProcess=false?Then
Response.write?"生成預覽圖錯誤:"&?ogvbox.GetErrString
End?If
Case?1
/'---------------------AspJpegV1.2---------------
Set?Logobox?=?Server.CreateObject("Persits.Jpeg")
/'//建議不要圖片和文字水印同時使用,本代碼為使用圖片水印。
Logobox.Open?LogoPath??/'//讀取添加的圖片。
/'//重新設置圖片的大小。
Logobox.Width?=?186??/'//用做水印的圖片的寬度值(像素)。
Logobox.Height?=?52??/'//用做水印的圖片的高度值(像素)。
/'//添加水印。
Set?ogvbox?=?Server.CreateObject("Persits.Jpeg")
/'//讀取要處理的原文件。
ogvbox.Open?Trim(Server.MapPath(imagename))
If?ogvbox.OriginalWidth
??Set?ogvbox?=?Nothing
??Exit?Sub
Else
IF?ImageMode<>""?and?FileExt<>"gif"?Then??/'//如果將這行改為IF?ImageMode<>""?Then則可給上傳的GIF圖片也加上水印,但是那些動畫的GIF在加了水印以后就只剩第一楨了,根據你的需求酌情處理吧。
/'//關于修改字體及文字顏色的。
/'//ogvbox.Canvas.Font.Color?=?&H0000FF??/'//水印文字的顏色,&H后面輸入色彩值。
/'//ogvbox.Canvas.Font.Size?=?18??/'//水印文字的大小。
/'//ogvbox.Canvas.Font.Family?=?"Arial"??/'//水印文字的字體名稱。
/'//ogvbox.Canvas.Font.ShadowColor?=?&H000000??/'//水印文字的陰影色彩。
/'//ogvbox.Canvas.Font.ShadowXoffset?=?1??/'//水印文字陰影向右偏移的像素值,輸入負值則向左偏移。
/'//ogvbox.Canvas.Font.ShadowYoffset?=?1??/'//水印文字陰影向下偏移的像素值,輸入負值則向右偏移。
/'//ogvbox.Canvas.Font.Quality?=?3??/'//水印文字的清晰度,從0~4,變換不是很大,建議用2或3。
/'//ogvbox.Canvas.Font.Bold?=?True??/'//水印文字是否為粗體,True=粗體?False=正常。
/'ogvbox.Canvas.Print?10,?10,?ImageMode??/'//水印文字的起始坐標(像素)。
ogvbox.Canvas.Pen.Color??=?&H000000??/'//增加水印后圖片的邊框色彩。
ogvbox.Canvas.Pen.Width??=?1???/'//增加水印后圖片的邊框寬度。
ogvbox.Canvas.Brush.Solid?=?False??/'//邊框內是否填充顏色,你可以試試看值為True時的效果^o^
ogvbox.DrawImage?ogvbox.width-186,?ogvbox.height-52,?Logobox,?0.5??/'//水印圖片的起始坐標,我這里ogvbox.width-186,?ogvbox.height-52,表示圖片在右下角,因為我的圖片寬是186,高是52,所以這樣寫,你可以根據自己的圖片進行調整。0.5是透明度,我這里是半透明,1表示不透明,你也可以試試看0.7或者0.8的效果。
ogvbox.Canvas.Bar?0,?0,?ogvbox.Width,?ogvbox.Height??/'//水印可用的范圍。我這里表示左上角至右下角,即整張圖片的任意為止都可加水印。
ogvbox.Save?Server.MapPath(imagename)??/'//根據以上參數生成增加水印后的圖片文件。
???End?If
???ogvbox.Width?=?ImageWidth
???ogvbox.height?=?ImageHeight
???/'ogvbox.height?=?ogvbox.Originalheight*ImageWidth//ogvbox.OriginalWidth
???ogvbox.Sharpen?1,?120
???ogvbox.Save?Server.MapPath(tempFilename)??/'//生成增加水印后的圖片的預覽圖片。
??End?If
??Set?Logobox=Nothing
/'//------Pollener.com?AspJpeg組件的預覽和水印生成------結束------
上文是Aspjpeg添加水印完整的使用方法,相信大家都有了一定的了解,想要了解更多的技術信息,請繼續關注錯新技術頻道吧!
?
新聞熱點
疑難解答