优道在线屏幕截图控件使用帮助

功能概述

优道在线屏幕截图控件(UUDoc Screen Capture Control)是一款基于WEB的在线屏幕截图产品,支持嵌入到IE、FireFox、Chrome、Opera等各类浏览器当中在线使用。用户对电脑屏幕进行截图后可以将截取到的图片保存到指定的服务器上。截图时控件能对窗口进行智能识别,可以实现对整个屏幕、程序窗口和固定区域的截图。在图形截取后自带有工具条实现对图片的在线标注功能,可以在截取的图形上绘制矩形、椭圆、箭头及输入文字,并可在线或离线保存截取的图片。

控件使用简单、兼容性强,适合在OA系统、信息管理和发布系统、网站后台、邮箱、在线协作工具等应用中使用,支持嵌入到各类WEB网页编辑器当中。这个控件我们免费提供,只有部分特殊功能收费,您可以免费使用在您现有的产品当中。如果您有特别的需求或者需要进行OEM定制,也可以与我们进行联系。

运行环境

服务器端:支持Windows和Linux操作系统,支持任何的服务器编程语言,例如asp,asp.net,php,java,python,ruby等

控件客户端支持的操作系统:WindowsXP/2003/2008/Vista/Win7/Win8

支持32位及64位操作系统和浏览器

支持嵌入到基于ActiveX技术的IE浏览器和使用NPAPI技术的非IE浏览器中

网页中嵌入控件

您可以参考我们提供的演示文件在网页中嵌入优道在线屏幕截图控件:

控件的PlogId为:UdCapture.Control

控件的ClassId为:0FAE7655-7C34-4DEE-9620-CD7ED969B3F2

控件的ContentType为: application/udcapture-plugin

   
    <object id="udCapture" width="0" height="0"
         classid="CLSID:0FAE7655-7C34-4DEE-9620-CD7ED969B3F2"
         codebase="axUdCapture32.msi#version=1,5,0,0">
         <param name="PostUrl" value="SaveFile.aspx" />

 
         <embed id="udCapturePlugin" width="0" height="0"
            type="application/udcapture-plugin" PostUrl="SaveFile.aspx"
            OnBeforeCapture="f_onBeforeCapture" OnCaptureCanceled="f_onCaptureCanceled"
            OnCaptureCompleted="f_onCaptureCompleted" OnBeforeUpload="f_onBeforeUpload"
            OnUploadCompleted="f_onUploadCompleted" OnUploadFailed="f_onUploadFailed">
         </embed>
    </object>
    

其中axUdCapture32.msi为控件的32位安装程序,axUdCapture64.msi为控件的64位安装程序,安装后控件支持IE访问;npUdCapture.msi为NPAPI版的安装程序,安装后支持FireFox、Chrome、Safari等使用NPAPI标准的非IE浏览器使用。

判断控件是否安装:


    <script type="text/javascript"> 
        var udCapCtl; //插件对象
        var UDCAPTURE_MIME_TYPE = "application/udcapture-plugin";//mimeType
        var UDCAPTURE_VERSION = "1.5.0";//当前最新的控件版本号
        var npSetupFile = "Setup/npUdCapture.msi";
        var axSetupFile = "Setup/axUdCapture32.msi";//32位ActiveX浏览器安装文件
        if (window.navigator.platform == "Win64" 
            || window.navigator.cpuClass == "x64")
            axSetupFile = "Setup/axUdCapture64.msi";//64位ActiveX浏览器安装文件

        //版本比较,检查是否安装了新版本
        function f_hasNewVer(instVer) {
            if (instVer.substring(0, 1) == 'v')
                instVer = instVer.substring(1, instVer.length);

            var newVer = UDCAPTURE_VERSION.split(".");
            var curVer = instVer.split(".");
            if (parseInt(newVer[0]) > parseInt(curVer[0]))
                return true;
            if (parseInt(newVer[0]) == parseInt(curVer[0]) &&
                 parseInt(newVer[1]) > parseInt(curVer[1]))
                return true;
            if (parseInt(newVer[0]) == parseInt(curVer[0]) &&
                 parseInt(newVer[1]) == parseInt(curVer[1])
                     && parseInt(newVer[2]) > parseInt(curVer[2]))
                return true;
            return false;
        }

        //检查是否安装了插件
        function f_installCheck() {
            if (udCapCtl)//已经启用
                return true; 

            var supportActiveX = (window.ActiveXObject !== undefined);
            if (supportActiveX) {//if IE
                var axObj
                try {
                    axObj = new ActiveXObject('UdCapture.Control');
                } catch (e) { }
                if (axObj) {
                    if (f_hasNewVer(axObj.GetVersion())) {
                        if (confirm("优道在线屏幕截图控件有新版本,升级后才能使用!\r\n" +
                            "点确定进行升级,升级时请关闭浏览器窗口...\r\n" +
                            "如果您已经进行升级,请关闭后重新打开浏览器...")) {
                            f_startSetup(axSetupFile);
                        }
                        return false;
                    }
                    else {
                        document.getElementById("udCapSpan").innerHTML = strCtl;
                        udCapCtl = document.getElementById("udCaptureCtl");
                        return true;
                    }
                }
                else {
                    if (confirm("您尚未安装优道在线屏幕截图控件,点确定进行安装")) {
                        f_startSetup(axSetupFile);
                    }
                    return false;
                }
            }
            else if (navigator.plugins)//NP
            {
                var plugin = (navigator.mimeTypes && navigator.mimeTypes[UDCAPTURE_MIME_TYPE]) ?
                    navigator.mimeTypes[UDCAPTURE_MIME_TYPE].enabledPlugin : 0;
                if (plugin) {
                    var pluginVersion = "v1.0.0";
                    var words = plugin.description.split(" ");
                    if (words[words.length - 1].substring(0, 1) == "v")
                        pluginVersion = words[words.length - 1];

                    if (f_hasNewVer(pluginVersion)) {
                        if (confirm("优道在线屏幕截图插件有新版本,升级后才能使用!\r\n" +
                            "点确定进行升级...")) {
                            f_startSetup(npSetupFile);
                        }
                        return false;
                    }
                    else {
                        document.getElementById("udCapSpan").innerHTML = strCtl;
                        udCapCtl = document.getElementById("udCapturePlugin");
                        return true;
                    }
                }
                if (confirm("您尚未安装优道在线屏幕截图插件,点确定进行安装")) {
                    f_startSetup(npSetupFile);
                }
            }
            return false;
        }

        //开始安装插件
        function f_startSetup(setupFile) {
            //下载文件用的隐藏iframe
            document.getElementById("setupFrame").setAttribute("src", setupFile);
            document.getElementById("btnCapture").style.display = "none";
            document.getElementById("btnReload").style.display = "inline";
        }
    </script>
    

属性的设置示例:

   
    <script type="text/javascript">
        //设置提交的参数
        function f_setPostParams() {
            udCapCtl.PostParams = "name=cn&age=32"
        }
    </script>
    

方法的调用示例


    <script type="text/javascript"> 
        //开始屏幕截图
        function f_capture() {
            if (f_installCheck()) {
                udCapCtl.StartCapture();
            }
        }
    </script>
    

事件的捕捉示例,兼容所有浏览器:


    <script type="text/javascript" event="f_onUploadCompleted(responseText)"
        for="udCaptureCtl">  
        f_onUploadCompleted(responseText);
    </script>

    <script type="text/javascript">  
        function f_onUploadCompleted(responseText) {
            f_log("图片上传完成.");
            var json = eval("(" + responseText + ")"); //转换json格式
            document.getElementById("snapImg").innerHTML = "<img src=\"" + json.filepath
             + "?" + Math.random() + "\">"
        }
    </script>
    

控件属性

属性名称类型属性说明
License字符获取或设置控件的注册码信息
PostUrl字符获取或设置图片提交上传的URL,如果未设置则不上传服务器,仅本地截图
FileField字符获取或设置文件上传的域,默认值为:UploadFile,相当于<input type="file" name="UploadFile">
FileName字符获取或设置截图后保存文件的名称及上传文件的名称,默认值为:SnapScreen.png
PostParams字符获取或设置以共同提交的POST参数,以“&”进行分隔,例如:name=cn&age=32
AutoMinimize布尔获取或设置是否截图时自动把当前窗口最小化。(注册版可用)
TipInfo布尔获取或设置动态选择截图区域时提示的文字内容。(注册版可用)
WebCodePage数字获取或设置使用的代码页号,非UTF8编码时使用。
IsUtf8Url布尔获取或设置是否使用UTF8编码进行Url提交请求,否则按指定代码页进行编码
IsUtf8Data布尔获取或设置是否使用UTF8编码格式输出响应内容,否则按指定代码页进行编码。
IsReady布尔获取控件是否已经准备好可以使用

 

控件方法

方法名称参数说明方法说明
void StartCapture()启动截图窗口进行屏幕截图
void StopCapture()停止截图或图片上传操作
void CaptureWindow(int index)index:可选参数,未填或为0截取当前浏览器窗口,
大于0可截取浏览器中的其它ActiveX控件窗口
对当前浏览器或浏览器中的其它ActiveX控件截图并直接上传(注册版可用)
void CaptureScreen()对屏幕进行截图并直接上传(注册版可用)
void CaptureRect(int left,int top,int width,int height)left:矩形区域左上角水平位置;
top:矩形区域左上角垂直位置;
width:要截取的矩形宽度;
height:要截取的矩形高度
对屏幕指定区域进行截图并直接上传(注册版可用)
string GetVersion()获取控件的当前版本号

 

控件事件

事件名称参数说明事件说明
OnBeforeCapture()在屏幕截图之前触发该事件
OnCaptureCompleted(string fileName)截图完成后保存在本地路径的图片文件名屏幕截图完成时触发该事件
OnCaptureCanceled()截图操作被取消时触发该事件
OnBeforeUpload(string fileName,long fileSize)fileName:上传的图片文件名;fileSize:上传的图片文件字节大小在截图完成之后开始上传到服务器之前触发该事件
OnUploadCompleted(string responseText)responseText:服务器端返回的文本响应内容。图片上传到服务器之后触发该事件
OnUploadFailed(int errorCode)errorCode:错误代码,0、正常;1、不支持的网络协议;2、连接服务器错误;3、发送服务器请求出错上传到服务器的过程出错时触发该事件

 

其它

  • 关于优道:珠海市优道信息科技有限公司是一家专业的浏览器插件技术开发公司,致力于解决浏览器不能到达的最后一公里的问题,为客户提供广泛的文档、图片和数据安全保护方面的产品和解决方案。
  • 优道网站:www.uudoc.com
  • 优道服务热线:0756-2132796,技术支持邮件:support@uudoc.com,技术支持QQ:13063574