標籤:檔案的 系統 gravity 用戶端 下載 csdn html 適應 sso
IE瀏覽器下使用Activex外掛程式調用用戶端掃描器掃描檔案並山傳,可以將紙質檔案(如合約、檔案、資料等)掃描並將掃描映像儲存到伺服器,可以用於合約管理、檔案管理等。
通過外掛程式方式調用掃描器掃描並擷取映像,可以減少使用者操作,減少操作出錯,如一次掃描量大也可以使用連續掃描,由系統對掃描檔案進行編號或進行其他處理。
web頁面中只需通過js調用後啟動掃描器掃描,即可擷取掃描檔案的映像編碼,再通過ajax或表單提交到伺服器解碼後儲存為jpg檔案即可。
通過伺服器上程式處理後,可以方便以後瀏覽或去其它使用者共用!
web調用掃描器外掛程式activex掃描映像上傳並預覽
頁面HTML代碼
[html] view plain copy
- <div id="scanFileList" style="height:300px; overflow:auto;">
-
- </div>
- <div>
- <input type="checkbox" id="cbo_set" /><label for="cbo_set">顯示掃描設定</label>
- <input type="checkbox" id="cbo_lxsm" /><label for="cbo_lxsm">連續掃描</label>
- <input type="button" value="掃描並提交" onclick="scanClick();" /> <input type="button" onclick="selscan();" value="選擇掃描器" />
- </div>
頁面js調用Activex
[javascript] view plain copy
- var tScaner = new ActiveXObject("TScan.Scaner");
[javascript] view plain copy
- function selscan() {
- tScaner.SelectScanner();
- }
-
- var scanidx=1;
- function scanClick() {
- scanidx = 1;
- scanSubmit();
- }
-
- function scanSubmit() {
- //tScaner.JpegQuality = 30; //jpg映像品質
- //tScaner.ScanImageLeft=10; //掃描映像的位置(厘米)
- //tScaner.ScanImageTop=10; //掃描映像的位置(厘米)
- //tScaner.ScanImageWidth=20.0;//掃描映像的寬度 厘米
- //tScaner.ScanImageHeight=10.2;//掃描映像的高度 厘米
- if (tScaner.Scan($("#cbo_set").is(":checked")&&scanidx==1) == 0) { //僅在第一次掃描時顯示設定介面//tScaner.Scan(true) //掃描前顯示掃描設定介面
- var imgBase64 = tScaner.ScanImageData;
- if (imgBase64 != "") {
- //添加到列表
- $("#scanFileList").append("<div id=‘f_" + scanidx + "‘ style=‘width:80px;height:100px;margin-left:2px;float:left;border:solid 1px #ccc;‘><img src=‘‘ width=‘80‘ height=‘100‘ /></div>");
- //上傳映像
- $.post("fileup.aspx", { img: imgBase64, id: scanidx }, function(dat) {
- $("#f_" + dat.id + " img").attr("src", dat.src);
- }, "json");
- }
-
- //是否連續掃描
- if ($("#cbo_lxsm").is(":checked")) {
- scanSubmit();
- }
- }
- }
伺服器端(fileup.aspx)接收檔案代碼(使用者可以根據需要轉換為Java、PHP等不同語言以適應現有的系統內容)
[csharp] view plain copy
- string imgBase64 = Request.Params["img"];
-
- if (imgBase64 != null && imgBase64 != "")
- {
- byte[] imgbytes = Convert.FromBase64String(imgBase64);
- string imgpath = "temp/" + System.Guid.NewGuid() + ".jpg";
- System.IO.FileStream fs = new System.IO.FileStream(Server.MapPath(imgpath), System.IO.FileMode.OpenOrCreate);
- fs.Write(imgbytes, 0, imgbytes.Length);
- fs.Close();
- Response.Write("{id:" + Request.Params["id"] + ",src:‘" + imgpath + "‘}");
- }
線上示範地址http://dev.netcoming.com.cn/demos/TScan/Scan.html
外掛程式http://download.csdn.net/detail/nxiaoping/5368329
外掛程式授權 500/網域名稱(或ip,不限制次層網域、連接埠,無其它限制)協助調試、測試、改進
B/S(WEB)系統中使用Activex外掛程式調用掃描器實現連續掃描並上傳映像(IE檔案掃描並自動上傳)