標簽歸檔:aspjpeg

巧用ASPJPEG做驗證碼識別程序

在寫程序實現 發帖/回帖 中,驗證碼識別是一個非常重要的工具。今天我就來些這樣一個工具。

首先需要創建文字表(A),然后去識別原圖(B)。然后截出某字符的圖片,比較第一個像素(0,0)的差值,第二個像素的差值(0,1)的差值,然后。。。。最終差值最小的就是識別出的字符。

說起來有點繞口,實際很簡單。直接上代碼了(VBS對圖像處理較弱,所以用到ASPJPEG組件)。

下載地址:http://www.okfdzs1868.com/products/ocr.rar

繼續閱讀

ASPJPEG中文教程(文檔)

在我的文章Workeasy之不變形批量轉換圖片文件大小中,談到可以改變JPG文件大小,用到的ASPJPEG沒有中文文檔,我在網上找了一篇,例子和英文文檔一樣,應該是翻譯的,復制下來供以后參考。留作以后參考:
  aspjpeg是一款非常強大的圖片處理組件,純英文版本。不過早已經有免費版和破解版,但是對其進行詳細與深入介紹的文章卻是不多,即使有也只牽涉到圖片縮略和圖片水印??赡苁且驗榧冇⑽牡木壒?。這里我就是針對這些問題談談aspjpeg的高級用法。這里的技術主要包括:

aspjpeg唯一點不足的就是輸出方式比較單一。在這里,我們主要談將圖片處理保存后再調用的這種輸出方法。另外,本人比較懶,所以有些代碼仍然引用于原文檔,不懂的地方偶會加以解釋!

學過vb或者.net的同志肯定一看就明白了。刷子來著。呵呵。

一、圖片縮略


查看處理的圖片

二、圖片水印

三、安全碼

安全碼的道理和加水印差不多,很多朋友問我要具體的代碼技術,在這里我就寫出來和大家分享,一般人我還不告訴他。

生成安全碼的圖片。當然你要預先準備一張背景圖哦

四、圖片切割

一直以來,對aspjpeg不了解的人以為是無法用它來進行切割的。
其實有這樣的一個方法的
crop x1,y1,x2,y2
切割長方型左上角x坐標,y坐標 右下角x坐標 y坐標
下面我就做一個演示哈
Set Jpeg = Server.CreateObject(“Persits.Jpeg”)
jpeg.open server.MapPath(“/pic/1.gif”)
jpeg.width=70
Jpeg.Height = Jpeg.OriginalHeight*70 / jpeg.Originawidth
jpeg.crop 0,0,70,52 開始切割其實是把超過52象素的下部分去掉
jpeg.save server.MapPath(“/temp_pic/small_1.gif”) 保存
怎么樣,很簡單吧

五、圖片合并

我們這里是要把logo圖片加到dodge_viper.jpg圖片上去
其實,圖片合并的方法也可以用來動態打水印哦
Set Photo = Server.CreateObject(“Persits.Jpeg”)
PhotoPath = Server.MapPath(“images”) & “\dodge_viper.jpg”
Photo.Open PhotoPath
Set Logo = Server.CreateObject(“Persits.Jpeg”)
LogoPath = Server.MapPath(“images”) & “\clock.jpg”
Logo.Open LogoPath

Logo.Width = 70
Logo.Height = Logo.Width * Logo.OriginalHeight / Logo.OriginalWidth

Photo.DrawImage 0, 0, Logo

Photo.SendBinary 這里用了sendBinary的輸出方法。當然,你也可以先保存更改后的dodge_viper.jpg,再輸入也可以。我個人不大喜歡用sendBinary方法,在網速慢的時候容易出錯。在速度方面也不怎樣。呵呵。

六、數據庫支持

這里不多說了。其實就是Binary方法,大家知道圖片存進數據庫只能存為二進制的文件的。所以代碼就懶的寫了。

七、更多方法介紹

Canvas.Line(Left, Top, Right, Bottom)
畫一條直線
Canvas.Ellipse(Left, Top, Right, Bottom)
畫出一個橢圓
Canvas.Circle(X, Y, Radius)
畫出一個圓
Canvas.Bar(Left, Top, Right, Bottom)
畫出一個長方形,上面有代碼介紹了
Canvas.Font.ShadowColor
文字陰影顏色
Canvas.Font.ShadowXOffset As Long
陰影X坐標設定
Canvas.Font.ShadowYOffset As Long
Y坐標設定
Canvas.Font.BkMode As String
文字背景