ocr.htm 29 KB

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