ocr.htm 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833
  1. <!DOCTYPE html
  2. PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <title>跨浏览器调用高拍仪测试demo</title>
  6. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  7. </head>
  8. <!-- 引入高拍仪JS接口-->
  9. <script src="gpyhs.js" type="text/javascript" charset="utf-8"></script>
  10. <script type="text/javascript">
  11. //时间格式化显示
  12. function formatDate(time) {
  13. var date = new Date(time);
  14. var year = date.getFullYear(),
  15. month = date.getMonth() + 1,
  16. day = date.getDate(),
  17. hour = date.getHours(),
  18. min = date.getMinutes(),
  19. sec = date.getSeconds();
  20. var newTime = year +
  21. (month < 10 ? '0' + month : month) +
  22. (day < 10 ? '0' + day : day) +
  23. (hour < 10 ? '0' + hour : hour) +
  24. (min < 10 ? '0' + min : min) +
  25. (sec < 10 ? '0' + sec : sec);
  26. return newTime;
  27. }
  28. function sleep(milliSeconds) {
  29. var startTime = new Date().getTime();
  30. while (new Date().getTime() < startTime + milliSeconds);
  31. }
  32. function ShowInfo(op) {
  33. var obj = document.getElementById("TextInfo");
  34. obj.value = obj.value + "\r\n" + op
  35. }
  36. /*----------------------------------------------------
  37. ---(必须重写该函数)返回获取的设备数目及设备名称 ---
  38. -----------------------------------------------------*/
  39. function GetDevCountAndNameResultCB(devCount, devNameArr) {
  40. if (devCount > 0) {
  41. var obj = document.getElementById("DevName");
  42. obj.options.length = 0;
  43. for (var i = 0; i < devCount; i++) {
  44. var objOption = document.createElement("option");
  45. objOption.text = devNameArr[i];
  46. objOption.value = i;
  47. obj.options.add(objOption);
  48. }
  49. obj.selectedIndex = 0;
  50. var CamID = obj.selectedIndex;
  51. //获取分辨率
  52. Cam_GetDevResolution(CamID);
  53. }
  54. else {
  55. ShowInfo("没有发现合适的设备!");
  56. }
  57. }
  58. /*---------------------------------------------------
  59. --- (必须重写该函数)返回获取的设备分辨率信息 ---
  60. ----------------------------------------------------*/
  61. function GetResolutionResultCB(resCount, resArr) {
  62. if (resCount > 0) {
  63. var selectIndex = 0;
  64. var obj = document.getElementById("DevResolution");
  65. obj.options.length = 0;
  66. for (var i = 0; i < resCount; i++) {
  67. var objOption = document.createElement("option");
  68. objOption.text = resArr[i];
  69. objOption.value = i;
  70. obj.options.add(objOption);
  71. //默认500万分辨率打开
  72. if (resArr[i] == "2592*1944") {
  73. selectIndex = i;
  74. }
  75. }
  76. obj.selectedIndex = selectIndex;
  77. //打开摄像头
  78. Cam_Close();
  79. sleep(100);
  80. var restr = obj[obj.selectedIndex].text;
  81. var pos = restr.lastIndexOf("*");
  82. var width = parseInt(restr.substring(0, pos));
  83. var height = parseInt(restr.substring(pos + 1, restr.length));
  84. var CamID = document.getElementById("DevName").selectedIndex;
  85. Cam_Open(CamID, width, height);
  86. }
  87. else {
  88. ShowInfo("获取分辨率信息失败!");
  89. }
  90. }
  91. /*---------------------------------------------------
  92. --- (必须重写该函数)返回摄像头开启状态 ---
  93. ----------------------------------------------------*/
  94. function GetCameraOnOffStatus(status) {
  95. if (status == 0) {
  96. ShowInfo("设备开启成功");
  97. //Cam_Rotate(1); // 0-> 0度, 1->90度, 2->180度, 3->270度
  98. }
  99. else {
  100. ShowInfo("设备开启失败!");
  101. }
  102. }
  103. // /*---------------------------------------------------
  104. // -------- (必须重写该函数)当前拍照状态 ---------
  105. // ----------------------------------------------------*/
  106. // function GetCaptrueStatusResultCB(status) {
  107. // if (status == 0) {
  108. // ShowInfo("拍照完成");
  109. // }
  110. // else {
  111. // ShowInfo("正在拍摄...");
  112. // }
  113. // }
  114. /*---------------------------------------------------
  115. -------- (必须重写该函数)拍照结果 ---------
  116. ----------------------------------------------------*/
  117. function GetCaptrueImgResultCB(flag, path, base64Str) {
  118. if (flag == 0) {
  119. var obj = document.getElementById("CameraPhoto");
  120. obj.src = "data:;base64," + base64Str;
  121. if (path == "") {
  122. ShowInfo("拍照成功");
  123. }
  124. else {
  125. return "data:;base64," + base64Str
  126. ShowInfo("拍照成功,图片保存位置:" + path);
  127. }
  128. }
  129. else {
  130. ShowInfo("拍照失败!");
  131. }
  132. }
  133. /*---------------------------------------------------
  134. ------ (必须重写该函数)身份证信息返回结果 ------
  135. ----------------------------------------------------*/
  136. function GetIdCardInfoResultCB(flag, Name, Sex, Nation, Born, Address, CardNum, IssuedAt, EffectedDate, CardImgPath, CardImgBase64) {
  137. if (flag == 0) {
  138. document.getElementById("CardName").value = Name;
  139. document.getElementById("CardSex").value = Sex;
  140. document.getElementById("CardNation").value = Nation;
  141. document.getElementById("CardBorn").value = Born;
  142. document.getElementById("CardAddress").value = Address;
  143. document.getElementById("CardNum").value = CardNum;
  144. document.getElementById("CardIssuedAt").value = IssuedAt;
  145. document.getElementById("CardEffectDate").value = EffectedDate;
  146. var obj = document.getElementById("IdCardPhoto");
  147. obj.src = "data:;base64," + CardImgBase64;
  148. ShowInfo("读卡成功");
  149. }
  150. else {
  151. ShowInfo("读卡失败!");
  152. }
  153. }
  154. /*-------------------------------------------------------------------
  155. ------ (必须重写该函数)身份证信息及正反面合并照片返回结果 ------
  156. --------------------------------------------------------------------*/
  157. function GetIdCardInfoAndImgResultCB(flag, Name, Sex, Nation, Born, Address, CardNum, IssuedAt, EffectedDate, CardImgPath, CardHeadImgBase64, CardImgBase64) {
  158. if (flag == 0) {
  159. document.getElementById("CardName").value = Name;
  160. document.getElementById("CardSex").value = Sex;
  161. document.getElementById("CardNation").value = Nation;
  162. document.getElementById("CardBorn").value = Born;
  163. document.getElementById("CardAddress").value = Address;
  164. document.getElementById("CardNum").value = CardNum;
  165. document.getElementById("CardIssuedAt").value = IssuedAt;
  166. document.getElementById("CardEffectDate").value = EffectedDate;
  167. var obj = document.getElementById("IdCardPhoto");
  168. obj.src = "data:;base64," + CardHeadImgBase64;
  169. var obj = document.getElementById("CameraPhoto");
  170. obj.src = "data:;base64," + CardImgBase64;
  171. ShowInfo("读卡成功");
  172. }
  173. else {
  174. ShowInfo("读卡失败!");
  175. }
  176. }
  177. /*---------------------------------------------------
  178. ------ (必须重写该函数)条码二维码识别返回结果------
  179. ----------------------------------------------------*/
  180. function QrBarCodeRecogResultCB(flag, codeStr) {
  181. if (flag == 0)
  182. ShowInfo("条码/二维码 识别结果:" + codeStr);
  183. else
  184. ShowInfo("未识别到内容!");
  185. }
  186. /*********************
  187. *** 初始化操作 ***
  188. **********************/
  189. function LoadCameraDocument() {
  190. if (!window.WebSocket) {
  191. alert("浏览器不支持HTML5,请更新浏览器或者使用其它浏览器");
  192. }
  193. //console.log("LoadCameraDocument");
  194. var obj = document.getElementById("CameraCtl");
  195. Cam_ControlInit(obj, 0, 0, 600, 400);
  196. }
  197. window.onload = function () {
  198. console.log("window.onload");
  199. }
  200. /*********************
  201. *** 打开摄像头 ***
  202. **********************/
  203. function toOpenCamera() {
  204. var CamID = document.getElementById("DevName").selectedIndex;
  205. var obj = document.getElementById("DevResolution");
  206. var restr = obj[obj.selectedIndex].text;
  207. var pos = restr.lastIndexOf("*");
  208. var width = parseInt(restr.substring(0, pos));
  209. var height = parseInt(restr.substring(pos + 1, restr.length));
  210. Cam_Open(CamID, width, height);
  211. }
  212. /*********************
  213. *** 关闭摄像头 ***
  214. **********************/
  215. function toCloseCamera() {
  216. Cam_Close();
  217. }
  218. /*********************
  219. *** 切换摄像头 ***
  220. **********************/
  221. function SelectDevice() {
  222. var CamID = document.getElementById("DevName").selectedIndex;
  223. //获取分辨率
  224. Cam_GetDevResolution(CamID);
  225. }
  226. /*********************
  227. *** 切换分辨率 ***
  228. **********************/
  229. function SelectResolution() {
  230. var obj = document.getElementById("DevResolution");
  231. var restr = obj[obj.selectedIndex].text;
  232. var pos = restr.lastIndexOf("*");
  233. var width = parseInt(restr.substring(0, pos));
  234. var height = parseInt(restr.substring(pos + 1, restr.length));
  235. var CamID = document.getElementById("DevName").selectedIndex;
  236. Cam_Open(CamID, width, height);
  237. }
  238. /*********************
  239. *** 拍照 ***
  240. **********************/
  241. function TakePhoto() {
  242. var name = formatDate(new Date().getTime());
  243. var obj = document.getElementById("FileType");
  244. var path;
  245. Cam_SetFileType(obj.selectedIndex); //设置文件格式
  246. if (obj.selectedIndex == 0) {
  247. path = "D:\\" + name + ".jpg";
  248. }
  249. else if (obj.selectedIndex == 1) {
  250. path = "D:\\" + name + ".png";
  251. }
  252. else if (obj.selectedIndex == 2) {
  253. path = "D:\\" + name + ".tif";
  254. }
  255. else if (obj.selectedIndex == 3) {
  256. path = "D:\\" + name + ".pdf";
  257. }
  258. else {
  259. path = "D:\\" + name + ".jpg";
  260. }
  261. Cam_Photo(path); //主摄像头拍照
  262. //Cam_Photo(""); //主摄像头拍照
  263. }
  264. function SetCameraCutMode() {
  265. if (document.getElementById("Radio1").checked) {
  266. Cam_SetCutMode(0);
  267. }
  268. if (document.getElementById("Radio3").checked) {
  269. Cam_SetCutMode(1);
  270. }
  271. if (document.getElementById("Radio2").checked) {
  272. Cam_SetCutMode(2);
  273. }
  274. if (document.getElementById("Radio4").checked) {
  275. Cam_SetCutMode(3);
  276. //设置裁剪区域
  277. //toSleep(100);
  278. //console.log("SetCustomArea");
  279. SetCustomArea(3000, 3000, 9000, 9000);
  280. }
  281. }
  282. /*********************
  283. *** 读取身份证 ***
  284. **********************/
  285. function GetIdCardInfo() {
  286. var path = "D:\\IdCard.jpg";
  287. //Cam_ReadIdCard(path);
  288. //Cam_ReadIdCard("");
  289. Cam_ReadIdCardEx(path);
  290. }
  291. /*********************
  292. *** 设置文件格式 ***
  293. **********************/
  294. function toSetFileType() {
  295. var obj = document.getElementById("FileType");
  296. Cam_SetFileType(obj.selectedIndex);
  297. }
  298. /*********************
  299. *** 设置色彩模式 ***
  300. **********************/
  301. function toSetColorModel() {
  302. var obj = document.getElementById("ColorMode");
  303. Cam_SetColorMode(obj.selectedIndex);
  304. }
  305. /*********************
  306. *** 设置JPG图像质量 ***
  307. **********************/
  308. function toSetJpgQuality() {
  309. var obj = document.getElementById("JpgQuality");
  310. var val = obj[obj.selectedIndex].text;
  311. Cam_SetJpgQuality(val);
  312. }
  313. /*********************
  314. *** 设置去黑边 ***
  315. **********************/
  316. function toSetDeleteBlackEdge() {
  317. var obj = document.getElementById("Checkbox1");
  318. if (obj.checked) {
  319. Cam_SetDeleteBlackEdge(1);
  320. }
  321. else {
  322. Cam_SetDeleteBlackEdge(0);
  323. }
  324. }
  325. /*********************
  326. *** 设置去底色 ***
  327. **********************/
  328. function toSetDeleteBgColor() {
  329. var obj = document.getElementById("Checkbox2");
  330. if (obj.checked) {
  331. Cam_SetDeleteBgColor(1);
  332. }
  333. else {
  334. Cam_SetDeleteBgColor(0);
  335. }
  336. }
  337. /*---------------------------------------------------
  338. -------- (必须重写该函数)上传结果 ---------
  339. ----------------------------------------------------*/
  340. function HttpResultCB(flag, ResultStr) {
  341. if (flag == 0) {
  342. alert("上传成功 :" + ResultStr);
  343. }
  344. else {
  345. alert("上传失败!");
  346. }
  347. }
  348. /*********************
  349. ****** 上传 ******
  350. **********************/
  351. function HttpUploadFile() {
  352. var filePath = "D:\\test.jpg";
  353. //var url = "http://112.27.213.220:2201/interface/FileUploadCode.jsp";
  354. //var url = "http://localhost:9005/MyServletTest/upload";
  355. var url = "http://localhost:4523/UploadFile.ashx";
  356. //var url = "http://localhost:9005/MyServletTest/upload";
  357. UploadFile(url, filePath);
  358. }
  359. //从摄像头中识别二维码
  360. function RecogQrCodeFromCamera(type) {
  361. Cam_RecogQrBarCodeFromCamera(type)
  362. }
  363. //从图片文件中识别二维码
  364. function RecogBarCodeFromFile(type) {
  365. var imgpath = "D:\\123.jpg";
  366. Cam_RecogQrBarCodeFromFile(type, imgpath)
  367. }
  368. //添加要合并的PDF文件
  369. function ToAddPDFFile() {
  370. Cam_AddImgFileToPDF("");
  371. // var path1 = "D:\\1.jpg";
  372. // var path2 = "D:\\2.jpg";
  373. // var path3 = "D:\\3.jpg";
  374. // var path4 = "D:\\4.jpg";
  375. // var path5 = "D:\\5.jpg";
  376. // var path6 = "D:\\6.jpg";
  377. // //var path7 = "D:\\7.jpg";
  378. // var allpath = path1 + ";" + path2 + ";" + path3 + ";" + path4 + ";" + path5 + ";" + path6 ;
  379. // Cam_AddImgFileToPDF(allpath);
  380. sleep(100);
  381. }
  382. /*---------------------------------------------------
  383. -------- 添加合并的PDF文件返回结果 ---------
  384. ----------------------------------------------------*/
  385. function AddImgFileToPDFResultCB(flag, base64Str) {
  386. if (flag == 0) {
  387. ShowInfo("添加合并的PDF文件成功");
  388. var obj = document.getElementById("CameraPhoto");
  389. obj.src = "data:;base64," + base64Str;
  390. }
  391. else {
  392. ShowInfo("添加合并的PDF文件失败!");
  393. }
  394. }
  395. //PDF合并测试
  396. function ToCombinePDF() {
  397. Cam_CombinePDF("D:\\test.pdf");
  398. //Cam_CombinePDF("");
  399. //Cam_CombinePDF("D:\\QRjoNxNcgw.pdf");
  400. }
  401. /*---------------------------------------------------
  402. -------- (必须重写该函数)合并PDF结果 ---------
  403. ----------------------------------------------------*/
  404. function PdfCombineResultCB(flag, PdfBase64Str) {
  405. if (flag == 0) {
  406. ShowInfo("合并PDF完成");
  407. console.log(PdfBase64Str);
  408. }
  409. else {
  410. ShowInfo("合并PDF失败!");
  411. }
  412. }
  413. //添加要合并的图像文件
  414. function ToAddMergeImageFile() {
  415. Cam_AddMergeImageFile("");
  416. sleep(100);
  417. }
  418. /*---------------------------------------------------
  419. -------- 添加合并图像文件返回结果 ---------
  420. ----------------------------------------------------*/
  421. function AddMergeImageFileResultCB(flag, base64Str) {
  422. if (flag == 0) {
  423. ShowInfo("添加合并图像文件成功");
  424. var obj = document.getElementById("CameraPhoto");
  425. obj.src = "data:;base64," + base64Str;
  426. }
  427. else {
  428. ShowInfo("添加合并图像文件失败!");
  429. }
  430. }
  431. //图像合并测试
  432. function ToMergeImages() {
  433. Cam_MergeImages("D:\\merge.jpg", 0);
  434. }
  435. /*---------------------------------------------------
  436. -------- (必须重写该函数)图像合并结果 ---------
  437. ----------------------------------------------------*/
  438. function MergeImagesResultCB(flag, base64Str) {
  439. if (flag == 0) {
  440. ShowInfo("图像合并完成");
  441. var obj = document.getElementById("CameraPhoto");
  442. obj.src = "data:;base64," + base64Str;
  443. }
  444. else {
  445. ShowInfo("图像合并失败!");
  446. }
  447. }
  448. /*---------------------------------------------------
  449. -------(必须重写该函数)获取驱动盘符返回结果--------
  450. ----------------------------------------------------*/
  451. function GetDriveResultCB(driveStr) {
  452. if (driveStr == "") {
  453. ShowInfo("获取盘符失败!");
  454. }
  455. else {
  456. ShowInfo(driveStr);
  457. }
  458. }
  459. //设置水印
  460. function toSetWaterMarkParams() {
  461. var isAddMark;
  462. var isAddTime;
  463. var wTransp;
  464. var wPos;
  465. var wSize;
  466. var wColor;
  467. var szInfo;
  468. var obj = document.getElementById("Checkbox3");
  469. if (obj.checked)
  470. isAddMark = 1;
  471. else
  472. isAddMark = 0;
  473. obj = document.getElementById("Checkbox4");
  474. if (obj.checked)
  475. isAddTime = 1;
  476. else
  477. isAddTime = 0;
  478. szInfo = document.getElementById("Text1").value; //水印内容
  479. wTransp = parseInt(document.getElementById("Text2").value); //透明度
  480. wSize = parseInt(document.getElementById("Text3").value); //水印大小
  481. wPos = document.getElementById("Select1").selectedIndex; //水印位置
  482. wColor = document.getElementById("Select2").selectedIndex; //水印颜色
  483. SetWaterMark(isAddMark, 0, isAddTime, wTransp, wPos, wSize, wColor, szInfo); //生效水印设置
  484. }
  485. //删除文件
  486. function ToDeleteFile() {
  487. var path = "D:\\log.txt";
  488. DeleteFile(path);
  489. }
  490. //删除文件返回结果
  491. function GetDeleteFileResultCB(flag) {
  492. if (flag == 0) {
  493. ShowInfo("删除文件成功");
  494. }
  495. else {
  496. ShowInfo("删除文件失败!");
  497. }
  498. }
  499. /*----------------------------------------------------------------
  500. -------(必须重写该函数)添加需要OCR识别的图片文件返回结果--------
  501. --------------------------------------------------------------*/
  502. function AddOcrRecogFileResultCB(flag, base64Str) {
  503. if (flag == 0) {
  504. ShowInfo("添加需要OCR识别的图片文件成功");
  505. var obj = document.getElementById("CameraPhoto");
  506. obj.src = "data:;base64," + base64Str;
  507. }
  508. else {
  509. ShowInfo("添加文件失败!");
  510. }
  511. }
  512. //添加文件
  513. function ToAddOcrRecogFile() {
  514. //AddOcrRecogFile(""); //传空拍照添加,也可以传文件路径
  515. var path1 = "D:\\1.jpg";
  516. var path2 = "D:\\2.jpg";
  517. var path3 = "D:\\3.jpg";
  518. var path4 = "D:\\4.jpg";
  519. var path5 = "D:\\5.jpg";
  520. var path6 = "D:\\6.jpg";
  521. //var path7 = "D:\\7.jpg";
  522. var allpath = path1 + ";" + path2 + ";" + path3 + ";" + path4 + ";" + path5 + ";" + path6;
  523. console.log(allpath);
  524. AddOcrRecogFile(allpath);
  525. }
  526. /*---------------------------------------------------
  527. -------(必须重写该函数)OCR识别结果返回--------
  528. ----------------------------------------------------*/
  529. function OcrCallResultCB(flag, proValue, ResultStr, base64Str) {
  530. if (flag == 0) {
  531. ShowInfo("Ocr文字识别成功:" + ResultStr);
  532. //ShowInfo("base64data:" + base64Str);
  533. var obj = document.getElementById("mypdf");
  534. obj.src = "data:application/pdf;base64," + base64Str;
  535. }
  536. else if (flag == 1) {
  537. ShowInfo("Ocr文字识别进度:" + proValue);
  538. }
  539. else {
  540. if (flag == 40)
  541. ShowInfo("Ocr授权失败!");
  542. else
  543. ShowInfo("Ocr文字识别失败!");
  544. }
  545. }
  546. //OCR识别(多张合并识别)
  547. function ToOcrCallProEx() {
  548. OcrCallProEx(0, "D:\\out.pdf", 0);
  549. }
  550. //OCR测试(单张识别)
  551. function OcrTest() {
  552. OcrCallPro(0, "D:\\test.jpg", "D:\\test.pdf");
  553. }
  554. </script>
  555. <body onload="LoadCameraDocument()">
  556. <div style="width:602px; height: 640px; border: 1px solid white; background:#C7EDCC; float:left">
  557. <div id='CameraCtl' style="width:600px; height: 400px"> </div>
  558. <div>
  559. 设备
  560. <select style="width:140px" id="DevName" onchange="SelectDevice()"></select>
  561. 分辨率
  562. <select style="width:140px" id="DevResolution" onchange="SelectResolution()"></select>
  563. <input type="button" value=" 打开设备 " onclick="toOpenCamera();" />
  564. <input type="button" value=" 关闭设备 " onclick="toCloseCamera();" />
  565. <br />
  566. 裁切模式:
  567. <input id="Radio1" name="R1" type="radio" value="V1" onclick="SetCameraCutMode()" checked="checked" />不裁切
  568. <input id="Radio2" name="R1" type="radio" value="V2" onclick="SetCameraCutMode()" />手动裁切
  569. <input id="Radio3" name="R1" type="radio" value="V3" onclick="SetCameraCutMode()" />自动裁切
  570. <input id="Radio4" name="R1" type="radio" value="V4" onclick="SetCameraCutMode()" />自定义
  571. <br />
  572. 文件格式:
  573. <select id="FileType" onchange="toSetFileType()">
  574. <option value="0">jpg</option>
  575. <option value="1">png</option>
  576. <option value="2">tif</option>
  577. <option value="3">pdf</option>
  578. </select>
  579. 色彩模式:
  580. <select id="ColorMode" onchange="toSetColorModel()">
  581. <option value="0">彩色</option>
  582. <option value="1">灰度</option>
  583. <option value="2">黑白</option>
  584. </select>
  585. 图像质量:
  586. <select id="JpgQuality" onchange="toSetJpgQuality()">
  587. <option value="0">10</option>
  588. <option value="1">20</option>
  589. <option value="2">30</option>
  590. <option value="3">40</option>
  591. <option value="4">50</option>
  592. <option value="5" selected="true">60</option>
  593. <option value="6">70</option>
  594. <option value="7">80</option>
  595. <option value="8">90</option>
  596. <option value="9">100</option>
  597. </select>
  598. <input id="Checkbox1" type="checkbox" onclick="toSetDeleteBlackEdge()" /> 去黑边
  599. <input id="Checkbox2" type="checkbox" onclick="toSetDeleteBgColor()" /> 去底色
  600. </div>
  601. <br />
  602. <div>
  603. <input id="Checkbox3" type="checkbox" /> 添加水印
  604. 水印内容<input id="Text1" type="text" value="水印测试" />
  605. 透明度<input id="Text2" type="text" value="127" style="width:40px" />
  606. 大小<input id="Text3" type="text" value="80" style="width:40px" /> <br />
  607. 位置
  608. <select id="Select1">
  609. <option value="0">左上</option>
  610. <option value="1">右上</option>
  611. <option value="2">左下</option>
  612. <option value="3">右下</option>
  613. <option value="4">中间</option>
  614. </select>
  615. 颜色
  616. <select id="Select2">
  617. <option value="0">红色</option>
  618. <option value="1">绿色</option>
  619. <option value="2">蓝色</option>
  620. <option value="3">青色</option>
  621. <option value="4">黄色</option>
  622. <option value="5">白色</option>
  623. <option value="6">黑色</option>
  624. </select>
  625. <input id="Checkbox4" type="checkbox" /> 添加时间水印
  626. <input type="button" value="生效水印参数设置" onclick="toSetWaterMarkParams()" />
  627. </div>
  628. <br />
  629. <div>
  630. <input type="button" value="获取盘符" onclick="GetDrives();" />
  631. <input type="button" value="放大" onclick="Cam_ZoomIn();" />
  632. <input type="button" value="缩小" onclick="Cam_ZoomOut();" />
  633. <input type="button" value="适屏" onclick="Cam_BestSize();" />
  634. <input type="button" value="1:1" onclick="Cam_TrueSize();" />
  635. <input type="button" value="左旋" onclick="Cam_RotateLeft();" />
  636. <input type="button" value="右旋" onclick="Cam_RotateRight();" />
  637. <input type="button" value="拍照" onclick="TakePhoto();" />
  638. <input type="button" value="对焦" onclick="Cam_Focus();" />
  639. <input type="button" value="设置" onclick="Cam_ShowVideoProp();" />
  640. <input type="button" value="上传" onclick="HttpUploadFile();" />
  641. <input type="button" value="读身份证" onclick="GetIdCardInfo();" />
  642. <input type="button" value="从摄像头中识别二维码" onclick="RecogQrCodeFromCamera(1);" />
  643. <input type="button" value="从图片中识别二维码" onclick="RecogBarCodeFromFile(1);" />
  644. <input type="button" value="添加合并PDF文件" onclick="ToAddPDFFile();" />
  645. <input type="button" value="合并PDF" onclick="ToCombinePDF();" />
  646. <input type="button" value="添加合并图像文件" onclick="ToAddMergeImageFile();" />
  647. <input type="button" value="合并图像" onclick="ToMergeImages();" />
  648. <input type="button" value="删除文件" onclick="ToDeleteFile();" />
  649. <input type="button" value="OCR" onclick="OcrTest();" />
  650. </div>
  651. <div>
  652. <input type="button" value="添加需要OCR识别的图片文件" onclick="ToAddOcrRecogFile();" />
  653. <input type="button" value="OCR识别(多张合并识别)" onclick="ToOcrCallProEx();" />
  654. </div>
  655. <div style="width:595px; height: 80px">
  656. <textarea style="width:100%; height:100%" id="TextInfo" cols="20" rows="2"></textarea>
  657. </div>
  658. </div>
  659. <div style="width:202px; height: 640px; border: 1px solid white; background:#C7EDCC; float:left">
  660. 拍照图片
  661. <br />
  662. <img id="CameraPhoto" src="" style="width: 198px;height: 198px;" />
  663. <br />
  664. 身份证信息
  665. <br />
  666. <img id="IdCardPhoto" src="" style="width: 80px;height: 100px;" />
  667. <br />
  668. 姓名
  669. <input id="CardName" type="text" style="width: 100px" /> <br />
  670. 性别
  671. <input id="CardSex" type="text" style="width: 50px" />
  672. 民族
  673. <input id="CardNation" type="text" style="width: 60px" /> <br />
  674. 出生
  675. <input id="CardBorn" type="text" style="width: 100px" /> <br />
  676. 住址
  677. <br />
  678. <textarea id="CardAddress" cols="20" rows="3" style="width:192px"></textarea>
  679. 身份证号码
  680. <br />
  681. <input id="CardNum" type="text" style="width: 195px" /> <br />
  682. 签发机关
  683. <input id="CardIssuedAt" type="text" style="width: 125px" /> <br />
  684. 有效期限
  685. <input id="CardEffectDate" type="text" style="width: 125px" /> <br />
  686. <embed id="mypdf" src="" type="application/pdf" width="200" height="100" />
  687. </div>
  688. </body>
  689. </html>