4.20.2008

autoit - 圖片處理

這一次要介紹的是圖片檔的教學
最近剛好需要用到對圖片批次裁剪的功能
因此就寫了一支程式,希望對需要的人也能有幫助
但在張貼我的程式碼之前,先以大陸寫的範例程式為引子吧

當然,圖片處理的UDF一定是要有的
其函數請到大陸的autoit交流網站找一個PhotoCom.au3的UDF
當然這邊也附上翻譯後的檔案_PhotoCom.au3
以下是程式碼的部份
對於各個函式的用法,我想自己看PhotoCom.au3應該就可很容易看懂了
在執行程式之前還需要一些預備動作:
1.因為PhotoCom.au3會用到AspJpeg.dll這一個檔案,所以請下載後把他放到System32這一個資料夾中,其用法可以參考這個網站
2.程式預設處理一張名為"7.jpg"的圖片,所以請任意放一張"7.jpg"的檔案到script的所在位置

(程式下載)

;==========================
; PhotoCom_example.au3
;---------------------
;PhotoCom UDF 圖面處理程式範例
;==========================
#include "_PhotoCom.au3" ;原檔名之前有加上一底線"_",表示是 UDF
_Photo_Watermark("7.jpg","新細明體",40,0xff4500,True,4,0xdcdcdc,4,-2,True,300,100,"這是浮水印功能","浮水印.jpg")
_Photo_Thumbs("7.jpg",64,64,"Thumbs.jpg")
_Photo_Merger("7.jpg","Thumbs.jpg",600,400,0.6,"Merger.jpg")
_Photo_Cutting("7.jpg",0,0,280,280,"Cutting.jpg")
_Photo_Frame("7.jpg",0xFF83FA,10,2,2,"Frame.jpg")
_Photo_Safety(100,25,0xffffff,"123這是編碼文字",20,0xFF0000,1,1,1,9,"Safety.jpg")
_Photo_Sharpen("7.jpg",1,350,"Sharpen.jpg") ;銳利化
_Photo_Grayscale("7.jpg",0,"GrayScale.jpg")
_Photo_ColorSet("7.jpg",0.01,2,0.01,"ColorSet.jpg")
_Photo_Sepia("7.jpg",50,1.4,"Sepia.jpg")
_Photo_DrawBar("7.jpg",0xFFFFFF,2,50,50,100,100,"DrawBar.jpg")
_Photo_Ellipse("7.jpg",0xFFFFFF,5,0,0xFFFFF0,50,50,100,100,"Ellipse.jpg")
_Photo_Line("7.jpg",0xFFFFFF,2,30,30,900,30,"Line.jpg")
_Photo_Flip("7.jpg",1,"Flip.jpg")
_Photo_Flip("7.jpg",0,"Flip2.jpg")
_Photo_Rotate("7.jpg",1,"Rotate1.jpg")
_Photo_Rotate("7.jpg",0,"Rotate2.jpg")
$test=_Photo_Info("7.jpg")
;$test[0]=圖片格式 $test[1]= 寬 $test[2]= 高
MsgBox (0,"","圖片格式:" & $test[0] & @CRLF & "寬:" & $test[1] & @CRLF & "高:" & $test[2])
Exit

沒有留言: