| 赞 | 8  | 
 
| VIP | 14 | 
 
| 好人卡 | 35 | 
 
| 积分 | 32 | 
 
| 经验 | 46931 | 
 
| 最后登录 | 2025-10-22 | 
 
| 在线时间 | 1438 小时 | 
 
 
 
 
 
Lv3.寻梦者 
	- 梦石
 - 0 
 
        - 星屑
 - 3171 
 
        - 在线时间
 - 1438 小时
 
        - 注册时间
 - 2009-7-27
 
        - 帖子
 - 1453
 
 
 
 | 
	
问题如标题,请高手为我解答。 
- # 不知道是谁写的脚本,原脚本是用于截图存档的截图脚本,但是不足的地方就是当
 
 - # 窗口标题变化(如测试时显示FPS时),就会截取屏幕右上角的图像。本人看了下,
 
 - # 是获取窗口句柄的部分有问题,不知道这个问题已经有没有人修正过了,反正先放
 
 - # 出来再说
 
 -   
 
 - #  使用说明: 截图存放目录,默认为 Save
 
 - #  调用方法: Screen2::shot 存图文件名,种类,切割数量,存放目录
 
 - #  种类: 1:bmp  2.ipg  3.png
 
 - #  切割数量:  [1,1] : 不切割   [2,2] : 横向1刀,纵向一刀  [3,2] : 横向2刀,纵向1刀
 
 - #              参数可以任意调整,最好切割的次数是游戏分辨率的约数
 
 - #  
 
  
 
 
 
- #==============================================================================
 
 - # ■ module Screen
 
 - #------------------------------------------------------------------------------
 
 - #  处理画面截图的模块。切割
 
 - #==============================================================================
 
  
- module Screen2
 
 -   # 声明 API
 
 -   @screen = Win32API.new 'screenshot', 'Screenshot', %w(l l l l p l l), ''
 
 -   @readini = Win32API.new 'kernel32', \
 
 -   'GetPrivateProfileStringA', %w(p p p p l p), 'l'
 
 -   @findwindow = Win32API.new 'user32', 'GetActiveWindow', '', 'l' 
 
 -   module_function
 
 -   #--------------------------------------------------------------------------
 
 -   # ● 截图
 
 -   #--------------------------------------------------------------------------
 
 -   def shot(file = "rplay", typ = 1,xy = nil,dir = "jt/")
 
 -     # 根据类型生成扩展名
 
 -     if typ == 0
 
 -       typname = ".bmp"
 
 -     elsif typ == 1
 
 -       typname = ".jpg"
 
 -     elsif typ == 2
 
 -       typname = ".png"
 
 -     end
 
 -     # 生成文件名
 
 -     file_name = dir + file.to_s + typname.to_s
 
 -     # 生成截图文件(x,y,width,height,文件名,窗口句柄,类型)
 
 -    unless xy == nil
 
 -     w = xy[0]
 
 -     h = xy[1]
 
 -     ww = 640 / w 
 
 -     hh = 480 / h
 
 -     index = 0
 
 -     阵 = []
 
 -     for www in 1..w 
 
 -       for hhh in 1..h
 
 -         index += 1
 
 -         x = ( www - 1 ) * ww
 
 -         y = ( hhh - 1 ) * hh
 
 -         file_name = dir + file.to_s + index.to_s+typname.to_s 
 
 -         @screen.call(x,y,ww,hh,file_name ,handel,typ)
 
 -         阵.push([file_name,x,y])
 
 -       end
 
 -     end
 
 -     save_data(阵,dir + file.to_s + ".info")
 
 -    else
 
 -     # 生成文件名
 
 -     file_name = dir + file.to_s + typname.to_s
 
 -     # 生成截图文件(x,y,width,height,文件名,窗口句柄,类型)
 
 -     @screen.call(0,0,640,480,file_name,handel,typ)
 
 -     end
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # ● 获取游戏窗口句柄
 
 -   #--------------------------------------------------------------------------
 
 -   def handel
 
 -     return @findwindow.call()
 
 -   end
 
 - end
 
 
  复制代码 |   
 
 
 
 |