标题: [其他] 批处理窗口显示图片[指定位置]Picshow.exe [打印本页]
作者: caruko 时间: 2011-4-25 22:44 标题: 批处理窗口显示图片[指定位置]Picshow.exe
该工具已更新,增加了很多功能。见下面链接。
http://bbs.bathome.net/thread-12498-1-1.html
Picshow.exe
大小:358k
au3编写
功能:在CMD(或别的)窗口中显示图片,调用GDI实现。
使用方法- picshow [#]title picfile1*x*y picfile2*x*y ...
-
- title - cmd窗口标题,只需标题中的几能够识别的字符即可,如"记事本 - 未命名",使用"记事本"或者"未命名"都可以;另,也可以是别的窗口,如WEB。
- picfile - 图片文件路径,当前路径只需写文件名,其它路径需使用全路径。目前支持jpg,bmp,gif(只显示第一帧)。
- x - 窗口的横坐标(像素点),并非屏幕桌面坐标。
- y - 窗口的纵坐标(像素点),并非屏幕桌面坐标。
- # - 在title前加#号,picshow会清除窗口中的已显示的内容。包括文字,图片。
-
- Picshow 按照参数顺序依次显示图片,如果图片位置重叠,先显示的在下方。
-
- 使用方法如:
- picshow cmd 1.jpg*100*100 2.jpg*200*200 在cmd窗口中100*100的位置显示图片1.jpg,然后在200*200位置显示2.jpg。 不能更改显示大小,需PS处理好。
复制代码
附件太大 =.= 350K,附上AU3代码得了,有需要的可自己编译算了。 也可联系我取得[email]caruko@qq.com[/email]。- #AutoIt3Wrapper_Change2CUI=y
- #NoTrayIcon
- #include <GUIConstantsEx.au3>
- #include <GDIplus.au3>
-
- Opt("WinTitleMatchMode", 2)
- If Not @Compiled Then
- MsgBox(0, "", "这是控制台程序,请在CMD下运行!" & @CRLF)
- Exit -1
- EndIf
- If $CmdLine[0] < 2 Then
- ConsoleWriteError("Picshow title [picfile*x*y]..." & @CRLF)
- Exit -1
- EndIf
-
- Global $Title,$hwnd,$str,$hG,$ags,$hGraphic,$clear=False
-
- If StringLeft($CmdLine[1],1) = "#" Then
- $clear=True
- $Title=StringTrimLeft($CmdLine[1],1)
- Else
- $Title=$CmdLine[1]
- EndIf
-
- $ags=$CmdLine[0]-2
- Dim $hGraphic[$CmdLine[0]][3]
-
- For $i=0 To $ags
- $str=StringSplit($CmdLine[$i+2],"*")
- If $str[0] <> 3 Then
- ConsoleWriteError("参数格式错误!如: a.jpg*100*200" & @CRLF)
- Exit
- EndIf
- $hGraphic[$i][0]=$str[1]
- $hGraphic[$i][1]=$str[2]
- $hGraphic[$i][2]=$str[3]
- Next
- $hwnd=WinGetHandle($Title)
- If Not $hwnd <> "" Then
- ConsoleWriteError("没有该标题的窗口!" & @CRLF)
- Exit
- EndIf
- _GDIPlus_Startup()
- $hG = _GDIPlus_GraphicsCreateFromHWND ($hwnd)
- If $clear Then _GDIPlus_GraphicsClear($hG)
- For $i=0 To $ags
- If Not _GDIPlus_GraphicsDrawImage ($hG, _GDIPlus_BitmapCreateFromFile($hGraphic[$i][0]), $hGraphic[$i][1], $hGraphic[$i][2]) Then
- ConsoleWriteError("第"&$i&"对参数有误:"&$hGraphic[$i][0]&" "&$hGraphic[$i][1]&" "&$hGraphic[$i][2] & @CRLF)
- EndIf
- Next
- _GDIPlus_GraphicsDispose ($hG)
- _GDIPlus_ShutDown ()
- $hGraphic=""
- Exit
复制代码
作者: zfkzp 时间: 2011-5-1 22:50
没人顶?帮顶!看玩笑,这么好的东西,竟然没人顶!
作者: wangxiulin 时间: 2011-5-14 08:27
顶...我来帮你顶...
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |