库 —— 截图库

光庆 2025-2-21 2584

经过本人[光庆][godking]对QQ浏览器PrintScreen模块进行深入分析,已经能正常调用该模块功能。

全网首发,欢迎改进。

使用腾讯官方模块文件进行适量修改,完全离线运行,脱离QQ、微信,体积小、纯净、稳定。

内含QQ浏览器、QQ浏览器高级版、QQ浏览器迷你版、微信暗色、微信亮色五种不同风格的截图接口。

模块名称 扩展功能 自适应dpi 不释放文件 引用http库 模块大小
godking.PrScrn QQ浏览器 提取文字、固定窗口 × 627K
godking.PrScrn.EX QQ浏览器高级版 提取文字、固定窗口、高级编辑、长截图 × 3.81M
godking.PrScrn.mini QQ浏览器 固定窗口、高级编辑 × × 627K
godking.PrScrn.light 微信亮色 × 1.22M
godking.PrScrn.dark 微信暗色 × 1.04M


 godking.PrScrn 效果 

支持编辑功能

支持右键菜单

import win.ui;
/*DSG{{*/
var winform = win.form(text="aardio form";right=255;bottom=335)
winform.add(
button={cls="button";text="截图";left=56;top=280;right=184;bottom=328;z=2};
edit={cls="edit";left=8;top=192;right=248;bottom=272;border=1;multiline=1;z=3};
plus={cls="plus";left=8;top=8;right=248;bottom=184;bgcolor=15793151;foreRepeat="scale";z=1}
)
/*}}*/

import godking.PrScrn
winform.button.oncommand = function(id,event){
       winform.plus.foreground,button,ocrstr = godking.PrScrn(1/*返回数据格式*/,/*图片保存目录*/,/*图片保存格式*/,true/*是否自动处理按钮*/);
       winform.edit.text = ocrstr;
}
winform.show();
win.loopMessage();

 godking.PrScrn.dark 效果 

import win.ui;
/*DSG{{*/
var winform = win.form(text="aardio form";right=759;bottom=469)
winform.add(
button={cls="button";text="截图";left=304;top=416;right=432;bottom=464;z=2};
plus={cls="plus";left=8;top=8;right=752;bottom=408;bgcolor=15793151;foreRepeat="scale";z=1}
)
/*}}*/

import godking.PrScrn.dark
winform.button.oncommand = function(id,event){
       winform.plus.foreground = godking.PrScrn.dark();
}
winform.show();
win.loopMessage();

 godking.PrScrn.light 效果 

import win.ui;
/*DSG{{*/
var winform = win.form(text="aardio form";right=759;bottom=469)
winform.add(
button={cls="button";text="截图";left=304;top=416;right=432;bottom=464;z=2};
plus={cls="plus";left=8;top=8;right=752;bottom=408;bgcolor=15793151;foreRepeat="scale";z=1}
)
/*}}*/

import godking.PrScrn.light
winform.button.oncommand = function(id,event){
       winform.plus.foreground = godking.PrScrn.light();
}
winform.show();
win.loopMessage();


最新回复 (19)
  • java 2025-2-21
    0 2

  • 近我者赤 2025-2-21
    0 3

    我的截图出来的菜单和你的不一样,是不是没安装QQ的原因?

  • 光庆 2025-2-22
    0 4
    近我者赤 我的截图出来的菜单和你的不一样,是不是没安装QQ的原因?

    可能是我截图截错了

  • zxl1969 2025-2-22
    0 5
    不装qq也能截图吗?
  • 光庆 2025-2-22
    0 6
    zxl1969 不装qq也能截图吗?
  • 小光芒 2025-2-23
    0 7
    顶!!!!!!!!!!!!!!!!!!!!!!!
  • 小肥羊 2025-2-24
    0 8
    顶一下!!!!! 我自己用的截图一直用的pixpin,光大可以参考下这个,就是看看调用模块能不能做点其他的功能。 pixpin我用的最多的功能之一就是钉在桌面,截完图,直接拖旁边去,有时候看文档很需要
  • 光庆 2025-2-24
    0 9
    小肥羊 顶一下!!!!! 我自己用的截图一直用的pixpin,光大可以参考下这个,就是看看调用模块能不能做点其他的功能。 pixpin我用的最多的功能之一就是钉在桌面,截完图,直接拖旁边去,有时候看 ...
    这个库基本就这样了。再扩展就是使用者自己去做了,我可能不会在上面耗费更多精力了。本身就是用的腾讯的接口,封装的只是基本的截图功能,其他功能得另外写。
  • Xmzzz 2025-2-26
    0 10
    截图,置顶。真的很常用,期待
  • nanyi 4天前
    0 11
    xiu
  • 近我者赤 4天前
    0 12

    我试了下库里带的两个例程,都存在错误,不知道是我的电脑问题,还是普遍问题:

    点击截个图就报错:默认的库也是,只有dark和light没问题

  • Mr_MAO 4天前
    0 13
    强大+简洁!庆大厉害👍👍👍
  • 光庆 4天前
    0 14
    近我者赤 我试了下库里带的两个例程,都存在错误,不知道是我的电脑问题,还是普遍问题:点击截个图就报错:默认的库也是,只有dark和light没问题
    可能是aardio更新导致的,数据类型发生了变化,不知道是故意这样修改的,还是bug。解决方法:将 bytes 改为 BYTES 。
  • yujinshun 3天前
    0 15
    光庆 可能是aardio更新导致的,数据类型发生了变化,不知道是故意这样修改的,还是bug。解决方法:将 bytes 改为 BYTES 。
    大佬,为何生成exe后,截图时没有窗口识别了,只能手动选区截图了
  • 光庆 2天前
    0 16
    yujinshun 大佬,为何生成exe后,截图时没有窗口识别了,只能手动选区截图了
    我测试可以的,你把代码发上来,我发布一个试试。
  • yujinshun 2天前
    0 17
    此楼层已删除
  • yujinshun 2天前
    0 18

    // 问题描述

    // 在aardio IDE 中运行测试,截图功能可以识别窗口控件

    // 发布为exe文件后运行测试,截图功能不能识别窗口控件,只能手动框选

    // aardio IDE 版本 v43.2.3

    // 系统版本: Windows 11 专业版 25H2


    import win;

    import win.ui;

    import fsys;

    import key;

    import godking.PrScrn.light;


    /*DSG{{*/

    winform = win.form(text="截图测试";right=757;bottom=467)

    winform.add(

    static={cls="static";text="按下 Shift+S 截图";left=166;top=93;right=386;bottom=131;font=LOGFONT(h=-27);transparent=1;z=1}

    )

    /*}}*/


    startScreenshot = function(){

    godking.PrScrn.light();

    }


    screenshotHotkeyId = null;


    registerScreenshotHotkey = function(hotkeyStr){

    if(screenshotHotkeyId != null){

    winform.unreghotkey(screenshotHotkeyId);

    screenshotHotkeyId = null;

    }

    if(hotkeyStr == null){hotkeyStr = "Shift+S";}

    var hotkeyStr = "Shift+S";

    var arr = string.split(hotkeyStr, "+");

    var k1 = key.VK;

    var keys1 = 0;

    var keys2 = "";

    for(i=1;#arr-1;1){

    var mod = arr[i];

    if(mod == "Ctrl"){keys1 += 2;}

    else if(mod == "Shift"){keys1 += 4;}

    else if(mod == "Alt"){keys1 += 1;}

    }


    var lastKey = arr[#arr];

    for (var key in k1){

    if (key == string.upper(lastKey)){

    keys2 = k1[key];

    break;

    }

    }

    if(keys2){

    screenshotHotkeyId = winform.reghotkey(

    function(id, mod, vk){

    startScreenshot();

    },

    keys1, keys2

    );

    }

    }


    registerScreenshotHotkey();


    winform.show();

    return win.loopMessage();


    上传的附件:
  • 光庆 2天前
    0 19
    yujinshun // 问题描述// 在aardio IDE 中运行测试,截图功能可以识别窗口控件// 发布为exe文件后运行测试,截图功能不能识别窗口控件,只能手动框选// aardio IDE 版本 v43.2.3 ...
    已升级,请重新下载。
  • yujinshun 2天前
    0 20
    光庆 已升级,请重新下载。
    已测试,完美解决,感谢大佬
返回