|
中级站长
  
- UID
- 17126
- 帖子
- 536
- 积分
- 1055
- 威望
- 0
- 金币
- 0
- 经验
- 1051
- 注册时间
- 2007-11-8
- 最后登录
- 2007-11-11
站长论坛第 17126 位会员
|
楼主
大 中
小 发表于 2007-6-12 08:27 只看该作者
 
电影缩略图批量生成.v7.6.11
[[wiki]wiki[/wiki]][/wiki]
名称: 雪城.-.电影缩略图批量生成.v7.6.11
[wiki]类[/wiki]型:[wiki]开源[/wiki][wiki]自由[wiki]软件[/wiki][/wiki]
简介: 配合 ImageGrabb II 使用,可以快速批量生成电影的缩略图。
在[wiki]测试[/wiki]的 AMD 1700+ 上,大约 15-20秒即可生成一部电影的缩略图。
附带源[wiki]程序[/wiki],有需要可以自己修改。
适用平台: Win[wiki]XP[/wiki] 1280*1024 [wiki]分辨率[/wiki]下 (其他没有测试)
作者: 雪城 ( mailto:jfxwc@163.com)
如果您改进了源程序,请您发一份源程序到作者 Email
下载:
[[wiki]URL[/wiki]=http://bbs.crsky.com/job.[wiki]PHP[/wiki]?action=download&pid=tpc&tid=1101770&aid=562468]IG.assist.v7.6.11.part1.rar[/url]
IG.assist.v7.6.11.part2.rar
MD5:
2C0D7310F9A2CD429C56C511B8EA965D IG.assist.v7.6.11.part1.rar
CD89E3B0CC0D90ED00B6831786ECE818 IG.assist.v7.6.11.part2.rar
源程序如下
Copy code
;------------------------------------------------------------------------
; 名 称: 雪城.-.电影缩略图批量生成
; 版 本: 7.6.11
; 更新[wiki]时间[/wiki]: 2007-06-11
; 简 介: 配合 ImageGrabb II 使用,可以快速批量生成电影的缩略图。
; 在测试的 AMD 1700+ 上,大约 15-20秒即可生成一部电影的缩略图。
; 适用AutoHotkey Version: 1.x
; Language: 中文
; 适用平台: WinXP 1280*1024 分辨率下 (其他没有测试)
; 作 者: 雪城 ( mailto:jfxwc@163.com)
; 其他说明: 如果您改进了这个脚本,希望您可以发一份源程序到作者 Email
;------------------------------------------------------------------------
; 特别感谢:
; 是他们制作了强大的软件:
; 非常感谢 Image Grabber II 作者。
; 非常感谢 AutoHotKey 作者。
; 每一位上传电影的朋友
; 每一位分享和使用这个脚本的朋友。
;------------------------------------------------------------------------
;只允许一个实例
#SingleInstance Force
;创建变量
SetEnv ,strMovieDir,strSaveDir,strTemp,iResure
;读取 IG.assist.INI 记录
IniRead, strMovieDir, %A_ScriptDir%\IG.assist.ini, setting, MovieDir , d:\clip\
IniRead, strSaveDir, %A_ScriptDir%\IG.assist.ini, setting, SaveDir , d:\clip1\
;创建窗体
Gui, Add, Text, x26 y10 w330 h20 , 配合 ImageGrabb II 使用,可以快速批量生成电影的缩略图。
Gui, Add, Text, x26 y30 w330 h30 , 请指定您电影及缩略图存放目录,运行该程序即可批量生成。根据测试,大约每部电影需要15-20秒即可。
Gui, Add, Text, x26 y60 w330 h20 , 生成时请不要进行其他操作,以免影响生成缩略图。
Gui, Add, Text, x26 y90 w60 h20 , 电影目录
Gui, Add, Text, x26 y120 w60 h20 , 缩略图目录
Gui, Add, Text, cbl[wiki]UE[/wiki] x376 y150 w90 h20 , 开源自由软件
Gui, Add, Button, x366 y20 w90 h30 GButtonGo, 开始
Gui, Add, Button, x366 y60 w90 h30 GButtonSave, 保存设置
Gui, Add, Button, x366 y100 w90 h30 GButtonExit, 退出
Gui, Add, Edit, x96 y90 w250 h20 , %strMovieDir%
Gui, Add, Edit, x96 y120 w250 h20 , %strSaveDir%
Gui, Add, CheckBox, x36 y150 w200 h20 [wiki]VC[/wiki]heckBox1, 包括子目录,重名加上随机数字。
Gui, Show, [wiki]X5[/wiki]69 y300 h181 w482, 雪城.-.电影缩略图批量生成.v7.6.11
Return
;------------------------------------------------------------------------
;窗体 Go 按键事件,用于生成缩略图,修改于2007-06-11
;------------------------------------------------------------------------
ButtonGo:
{
;最小化主界面
WinMinimize
;从窗体读取 MovieDir 并处理,保证后面是 "\"
ControlGetText , strMovieDir,Edit1
StringRight , strTemp , strMovieDir , 1
if (strTemp!="\")
{
strMovieDir=%strMovieDir%\
}
;从窗体读取 SaveDir 并处理,保证后面是 "\"
ControlGetText , strSaveDir, Edit2
StringRight , strTemp , strSaveDir , 1
if (strTemp!="\")
{
strSaveDir = %strSaveDir%\
}
;当电影目录不存在,退出程序。
IfNotExist, %strMovieDir%
{
Msgbox 电影目录 %strMovieDir% 不存在,程序准备退出。
ExitApp
}
;当缩略图目录不存在,退出程序。
IfNotExist, %strSaveDir%\
{
Msgbox 缩略图目录 %strSaveDir% 不存在,程序准备退出。
ExitApp
}
;运行 IG
Run ,Image Grabber II.exe
;根据 子目录 checkbox 来决定是否包括子目录
GuiControlGet, Checkbox1
if (CheckBox1= 1)
{
iResure = 1
}
Else
{
iResure = 0
}
;开始循环抓图
Loop, %strMovieDir%*.*, , %iResure%
{
clipboard=%A_LoopFileFullPath%
;开始用 IG 抓图
WinWait , Image Grabber II,
IfWinNotActive , Image Grabber II, , WinActivate, Image Grabber II,
WinWaitActive , Image Grabber II,
MouseClick , left, 200, 13
Sleep , 100
;打开电影
Send , {ALTDOWN}f{ALTUP}{ENTER}
WinWait , 打开, 查找范围(&I):
IfWinNotActive , 打开, 查找范围(&I):, WinActivate, 打开, 查找范围(&I):
WinWaitActive , 打开, 查找范围(&I):
Send , {CTRLDOWN}v{CTRLUP}{ENTER}
;点击 IG 界面上的抓图按键
WinWait , Image Grabber II,
IfWinNotActive , Image Grabber II, , WinActivate, Image Grabber II,
WinWaitActive , Image Grabber II,
MouseClick , left, 85, 64
Sleep , 100
Send , {ENTER}
;保存抓下的图片
WinWait , Image Grabber II,
IfWinNotActive , Image Grabber II, , WinActivate, Image Grabber II,
WinWaitActive , Image Grabber II,
MouseClick , left, 212, 18
Sleep , 100
Send , {ALTDOWN}f{ALTUP}s
WinWait , 保存, 列 数:
IfWinNotActive , 保存, 列 数:, WinActivate, 保存, 列 数:
WinWaitActive , 保存, 列 数:
Send , {TAB}{TAB}{ENTER}
WinWait , 另存为, 保存类型(&T):
IfWinNotActive , 另存为, 保存类型(&T):, WinActivate, 另存为, 保存类型(&T):
WinWaitActive , 另存为, 保存类型(&T):
;取不带路径文件名,加上保存目录名放入剪贴板,保存,加入 .jpg 后缀
;如果文件存在,就为文件名加上 _随机4位数 作为新文件名。
strTemp = %strSaveDir%%A_LoopFileName%.jpg
loop
{
ifExist %strTemp%
{
Random , kkk , 1000, 9999
strTemp = %strSaveDir%%A_LoopFileName%_%kkk%.jpg
}
Else
{
Clipboard = %strTemp%
Send , {CTRLDOWN}v{CTRLUP}{ENTER}
break
}
}
;等待1秒后,删除 IG 主界面已经抓好的图片
WinWait , Image Grabber II,
IfWinNotActive , Image Grabber II, , WinActivate, Image Grabber II,
WinWaitActive , Image Grabber II,
MouseClick , right, 79, 515
Sleep , 500
MouseClick , left, 112, 565
Sleep , 1000
}
;完成后退出
ExitApp
return
}
;------------------------------------------------------------------------
;窗体 Save 按键事件,用于保存目录,修改于2007-06-11
;------------------------------------------------------------------------
ButtonSave:
{
ControlGetText , strMovieDir,Edit1
ControlGetText , strSaveDir, Edit2
IniWrite , %strMovieDir%, %A_ScriptDir%\IG.assist.ini, setting, MovieDir
IniWrite , %strSaveDir%, %A_ScriptDir%\IG.assist.ini, setting, SaveDir
return
}
;------------------------------------------------------------------------
;窗体 Go 按键事件,用于生成缩略图,修改于2007-06-11
;------------------------------------------------------------------------
ButtonExit:
{
ExitApp
}
GuiClose:
ExitApp
|