搜索
查看: 1925|回复: 6

[图像] 调用soImage录屏并存为GIF文件

  [复制链接]

185

主题

2541

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
13973
发表于 2017-11-2 20:28:56 | 显示全部楼层 |阅读模式
刚才更新了一下soImage扩展库,增加了生成GIF文件的功能,演示:
import console;
import soImage;

console.open()
var gifFile = soImage.gifFile("/test.gif");

var img = soImage();  
for(i=1;20;1){
    img.capture();
//截屏
    gifFile.write(img ); //写入GIF文件
    console.log("已录制",gifFile.count() );
   
sleep(10);
}

gifFile.close();
console.pause();

img抓屏以后,可以继续调用soImage的图像处理函数处理,缩小什么的,
如果是对话框,可能要创建个线程来录,不再写示例,大家自己研究一下。

评分

参与人数 1银币 +90 收起 理由
popdes + 90 很给力!

查看全部评分

回复

使用道具 举报

39

主题

174

帖子

1028

积分

荣誉会员

htmlayout.cn 我的学习笔记

Rank: 8Rank: 8

积分
1028
发表于 2017-11-2 20:29:45 | 显示全部楼层
Jacen威武 ,
! www.HtmLayout.Cn 我的学习笔记
回复

使用道具 举报

1

主题

54

帖子

371

积分

培训班

积分
371
发表于 2017-11-2 20:43:03 | 显示全部楼层
好东西,收藏了!!!
--雪之梦--
回复

使用道具 举报

0

主题

1

帖子

17

积分

新手入门

Rank: 1

积分
17
发表于 2017-11-21 00:48:53 | 显示全部楼层
我用soImage中的getBytes方法,一直截取控件中摄像头视频的图像,但是造成内存一直在不停疯长,无法释放而造成程序崩溃,请问应该怎么处理?
回复

使用道具 举报

39

主题

174

帖子

1028

积分

荣誉会员

htmlayout.cn 我的学习笔记

Rank: 8Rank: 8

积分
1028
发表于 2017-11-22 22:46:18 | 显示全部楼层
借花献佛,群里kio1 提供的gif录制过程中录制鼠标代码, 分享给更多的人:
  1. import console;
  2. import soImage;

  3. console.open()
  4. var gifFile = soImage.gifFile("/test.gif");
  5. class CURSORINFO{
  6.     INT cbSize = 20;  
  7.     INT flags;  
  8.     pointer hCursor;  
  9.     struct ptScreenPos = {int x;int y};
  10. }

  11. var img = soImage();  
  12. var img2 = soImage()
  13. for(i=1;20;1){
  14.     img.capture(); //截屏
  15.     var info = CURSORINFO()
  16.     //获取鼠标信息
  17.     ::User32.GetCursorInfo(info)
  18.     //取得鼠标样式
  19.     img2.fromIcon(info.hCursor)
  20.     //混合图片,注意最后一个参数
  21.     img.mix(img2,info.ptScreenPos.x,info.ptScreenPos.y,6/*_MIX_SCREEN*/);
  22.     gifFile.write(img ); //写入GIF文件
  23.     console.log("已录制",gifFile.count() );
  24.     sleep(10);
  25. }

  26. gifFile.close();
  27. console.pause();
复制代码
! www.HtmLayout.Cn 我的学习笔记
回复

使用道具 举报

185

主题

2541

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
13973
 楼主| 发表于 2017-11-22 23:24:31 | 显示全部楼层
mengzhiguo 发表于 2017-11-21 00:48
我用soImage中的getBytes方法,一直截取控件中摄像头视频的图像,但是造成内存一直在不停疯长,无法释放而 ...

这个问题已经修复了,非常感谢
回复

使用道具 举报

185

主题

2541

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
13973
 楼主| 发表于 2017-11-22 23:28:03 | 显示全部楼层
popdes 发表于 2017-11-22 22:46
借花献佛,群里kio1 提供的gif录制过程中录制鼠标代码, 分享给更多的人:

试了一下,这个很酷
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|站长邮箱|aardio.com|aardio官方社区 ( 皖ICP备09012014号 )

GMT+8, 2018-10-22 04:46 , Processed in 0.109375 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表