demo1600_1800_2000.html 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690
  1. <html>
  2. <head>
  3. <!--<meta http-equiv="Content-Type" content="text/html; charset=gb2312">-->
  4. <meta http-equiv="X-UA-Compatible" content="IE=10"/>
  5. <title>SDK demo</title>
  6. <script language="javascript" type="text/javascript">
  7. var CamID = -1;
  8. var ResolutionStr;
  9. var pCamWidth;
  10. var pCamHeight;
  11. var DeviceCount;
  12. var DeviceStatus = false;
  13. var isOpenCamera = false;
  14. var isAllSelect = 0;
  15. var RotateAngle = 0;
  16. var isCaptureIdCard = false;
  17. var IdCardCount = 0;
  18. var IdCardPath1;
  19. var IdCardPath2;
  20. //var t2 = window.setTimeout("show()", 3000);
  21. function ShowInfo(op) {
  22. var obj = document.getElementById("TextArea1");
  23. obj.value = obj.value + " \n" + op;
  24. }
  25. //时间格式化显示
  26. function formatDate(time) {
  27. var date = new Date(time);
  28. var year = date.getFullYear(),
  29. month = date.getMonth() + 1,
  30. day = date.getDate(),
  31. hour = date.getHours(),
  32. min = date.getMinutes(),
  33. sec = date.getSeconds();
  34. var newTime = year +
  35. (month < 10 ? '0' + month : month) +
  36. (day < 10 ? '0' + day : day) +
  37. (hour < 10 ? '0' + hour : hour) +
  38. (min < 10 ? '0' + min : min) +
  39. (sec < 10 ? '0' + sec : sec) ;
  40. return newTime;
  41. }
  42. function InitLoad() {
  43. //axOcx.SetCutType(1); //默认自动寻边
  44. DeviceCount = axOcx.GetDeviceCount(); //获取设备数目
  45. if (DeviceCount == 0)
  46. alert("未发现相关设备");
  47. if (DeviceCount > 0) {
  48. //枚举相关设备
  49. for (var i = 0; i < DeviceCount; i++) {
  50. var nameStr = axOcx.GetDeviceName(i);
  51. var objOption = document.createElement("option");
  52. objOption.text = nameStr;
  53. objOption.value = i;
  54. document.getElementById("Device").options.add(objOption);
  55. }
  56. document.getElementById("Device").selectedIndex = 0;
  57. CamID = 0;
  58. var resindex = 0;
  59. var cmpVal = 0;
  60. //主头
  61. if (CamID == 0) {
  62. var ResolutionCount = axOcx.GetStillResolutionCount(CamID); //获取分辨率数目
  63. if (ResolutionCount > 0) {
  64. var resObj = document.getElementById("Resolution");
  65. for (var i = 0; i < ResolutionCount; i++) {
  66. var resolutionStr = axOcx.GetStillResolution(i);
  67. var objOption = document.createElement("option");
  68. objOption.text = resolutionStr;
  69. objOption.value = i;
  70. resObj.options.add(objOption);
  71. //找出最大分辨率
  72. var pos = resolutionStr.lastIndexOf("*");
  73. var cmpWidth = parseInt(resolutionStr.substring(0, pos));
  74. if (cmpWidth > cmpVal) {
  75. resindex = i;
  76. }
  77. }
  78. resObj.selectedIndex = resindex;
  79. ResolutionStr = resObj.options[resObj.selectedIndex].text;
  80. var pos = ResolutionStr.lastIndexOf("*");
  81. pCamWidth = parseInt(ResolutionStr.substring(0, pos));
  82. pCamHeight = parseInt(ResolutionStr.substring(pos + 1, ResolutionStr.length));
  83. }
  84. }
  85. //副头
  86. if (CamID == 1) {
  87. var ResolutionCount = axOcx.GetResolutionCount(CamID); //获取分辨率数目
  88. if (ResolutionCount > 0) {
  89. var resObj = document.getElementById("Resolution");
  90. for (var i = 0; i < ResolutionCount; i++) {
  91. var resolutionStr = axOcx.GetResolution(i);
  92. var objOption = document.createElement("option");
  93. objOption.text = resolutionStr;
  94. objOption.value = i;
  95. resObj.options.add(objOption);
  96. }
  97. resObj.selectedIndex = 0;
  98. ResolutionStr = resObj.options[resObj.selectedIndex].text;
  99. var pos = ResolutionStr.lastIndexOf("*");
  100. pCamWidth = parseInt(ResolutionStr.substring(0, pos));
  101. pCamHeight = parseInt(ResolutionStr.substring(pos + 1, ResolutionStr.length));
  102. }
  103. }
  104. }
  105. }
  106. //开启摄像头
  107. function OpenDevice() {
  108. if (DeviceCount > 0) {
  109. var iRect;
  110. if (CamID == 0) //主头
  111. iRect = axOcx.OpenDeviceEx(pCamWidth, pCamHeight);
  112. if (CamID == 1) //副头
  113. iRect = axOcx.OpenDevice(CamID, pCamWidth, pCamHeight);
  114. if (iRect == 0) {
  115. isOpenCamera = true;
  116. }
  117. else {
  118. axOcx.CloseDevice();
  119. isOpenCamera = false;
  120. }
  121. }
  122. }
  123. //关闭摄像头
  124. function CloseDevice() {
  125. if (isOpenCamera)
  126. {
  127. axOcx.CloseDevice()
  128. isOpenCamera = false;
  129. }
  130. }
  131. //切换摄像头
  132. function SelectDevice() {
  133. var resindex = 0;
  134. var cmpVal = 0;
  135. CamID = document.getElementById("Device").selectedIndex;
  136. if (CamID == 0) {
  137. var ResolutionCount = axOcx.GetStillResolutionCount(CamID); //获取分辨率数目
  138. if (ResolutionCount > 0) {
  139. var resObj = document.getElementById("Resolution");
  140. for (var i = 0; i < ResolutionCount; i++) {
  141. var resolutionStr = axOcx.GetStillResolution(i);
  142. var objOption = document.createElement("option");
  143. objOption.text = resolutionStr;
  144. objOption.value = i;
  145. resObj.options.add(objOption);
  146. //找出最大分辨率
  147. var pos = resolutionStr.lastIndexOf("*");
  148. var cmpWidth = parseInt(resolutionStr.substring(0, pos));
  149. if (cmpWidth > cmpVal) {
  150. resindex = i;
  151. }
  152. }
  153. resObj.selectedIndex = resindex;
  154. ResolutionStr = resObj.options[resObj.selectedIndex].text;
  155. var pos = ResolutionStr.lastIndexOf("*");
  156. pCamWidth = parseInt(ResolutionStr.substring(0, pos));
  157. pCamHeight = parseInt(ResolutionStr.substring(pos + 1, ResolutionStr.length));
  158. }
  159. }
  160. //副头
  161. if (CamID == 1) {
  162. var ResolutionCount = axOcx.GetResolutionCount(CamID); //获取分辨率数目
  163. if (ResolutionCount > 0) {
  164. var resObj = document.getElementById("Resolution");
  165. for (var i = 0; i < ResolutionCount; i++) {
  166. var resolutionStr = axOcx.GetResolution(i);
  167. var objOption = document.createElement("option");
  168. objOption.text = resolutionStr;
  169. objOption.value = i;
  170. resObj.options.add(objOption);
  171. }
  172. resObj.selectedIndex = 0;
  173. ResolutionStr = resObj.options[resObj.selectedIndex].text;
  174. var pos = ResolutionStr.lastIndexOf("*");
  175. pCamWidth = parseInt(ResolutionStr.substring(0, pos));
  176. pCamHeight = parseInt(ResolutionStr.substring(pos + 1, ResolutionStr.length));
  177. }
  178. }
  179. CloseDevice();
  180. OpenDevice();
  181. }
  182. //切换分辨率
  183. function SelectResolution() {
  184. var resObj = document.getElementById("Resolution");
  185. ResolutionStr = resObj.options[resObj.selectedIndex].text;
  186. var pos = ResolutionStr.lastIndexOf("*");
  187. pCamWidth = parseInt(ResolutionStr.substring(0, pos));
  188. pCamHeight = parseInt(ResolutionStr.substring(pos + 1, ResolutionStr.length));
  189. CloseDevice();
  190. OpenDevice();
  191. }
  192. //抓图拍照
  193. var captureCount = 0;
  194. function Capture() {
  195. if (isOpenCamera == false)
  196. return;
  197. var formatIndex = document.getElementById("FileFormat").selectedIndex; //文件格式
  198. var formatTypeStr = ".jpg";
  199. if (formatIndex == 0) formatTypeStr = ".jpg";
  200. if (formatIndex == 1) formatTypeStr = ".bmp";
  201. if (formatIndex == 2) formatTypeStr = ".png";
  202. if (formatIndex == 3) formatTypeStr = ".tif";
  203. if (formatIndex == 4) formatTypeStr = ".gif";
  204. if (formatIndex == 5) formatTypeStr = ".pdf";
  205. var name = formatDate(new Date().getTime());
  206. var path = "D:\\" + name + formatTypeStr;
  207. var base64Str;
  208. if (CamID == 0)
  209. base64Str = axOcx.CaptureImage(path);
  210. if (CamID == 0)
  211. base64Str = axOcx.CaptureStillImage(path);
  212. //axOcx.GetQrBarCodeContent(1, path);
  213. if (base64Str != "fail") {
  214. var showImgCtl = document.getElementById("img1");
  215. showImgCtl.src = "data:;base64," + base64Str;
  216. ShowInfo("拍照完成,图片位置:" + path);
  217. }
  218. else
  219. ShowInfo("拍照失败!");
  220. }
  221. function GetQrBarCodeContent() {
  222. if (isOpenCamera == false)
  223. return;
  224. var iRest = axOcx.GetQrBarCodeContent(1, "");
  225. ShowInfo("二维码识别结果:" + iRest);
  226. }
  227. //添加图片到PDF
  228. function AddImageToPDF() {
  229. if (isOpenCamera == false)
  230. return;
  231. axOcx.SetImageFormat(0); //默认添加JPG格式图片
  232. var name = formatDate(new Date().getTime());
  233. var path = "D:\\" + name + ".jpg";
  234. var base64Str = axOcx.CaptureImage(path);
  235. axOcx.AddImageFileToPDF(path);
  236. var showImgCtl = document.getElementById("img1");
  237. showImgCtl.src = "data:;base64," + base64Str;
  238. ShowInfo("已添加要合并到PDF的图片,图片位置:" + path);
  239. var formatIndex = document.getElementById("FileFormat").selectedIndex;
  240. axOcx.SetImageFormat(formatIndex);
  241. }
  242. //合并PDF
  243. function CombineToPDF() {
  244. var name = formatDate(new Date().getTime());
  245. var path = "D:\\" + name + ".pdf";
  246. var iRest = axOcx.CombineToPDF(path, false);
  247. if (iRest == 0) {
  248. ShowInfo("PDF合并成功,文件位置:" + path);
  249. }
  250. else {
  251. ShowInfo("PDF合并失败!");
  252. }
  253. }
  254. //旋转
  255. function SetRoate(ag) {
  256. if (isOpenCamera == false)
  257. return;
  258. if (ag == 0) {
  259. RotateAngle -= 90;
  260. if (RotateAngle < 0)
  261. RotateAngle = 270;
  262. }
  263. else {
  264. RotateAngle += 90;
  265. if (RotateAngle > 270)
  266. RotateAngle = 0;
  267. }
  268. axOcx.SetRotate(RotateAngle);
  269. }
  270. //缩放
  271. function Zoom(val) {
  272. if (isOpenCamera == false)
  273. return;
  274. if (val == 0) {
  275. axOcx.ZoomIn();
  276. }
  277. else {
  278. axOcx.ZoomOut();
  279. }
  280. }
  281. //1:1
  282. function TrueSize() {
  283. if (isOpenCamera == false)
  284. return;
  285. axOcx.TrueSize();
  286. }
  287. //适合屏幕
  288. function BestSize() {
  289. if (isOpenCamera == false)
  290. return;
  291. axOcx.BestSize();
  292. }
  293. //对焦
  294. function ManualToFocus() {
  295. if (isOpenCamera == false) return;
  296. axOcx.ManualToFocus();
  297. }
  298. //设备属性
  299. function SetParams() {
  300. if (isOpenCamera == false) return;
  301. axOcx.ShowImageSettingWindow();
  302. }
  303. //设置拍摄模式
  304. function SetCaptrueMode() {
  305. if (document.getElementById("Radio1").checked) {
  306. axOcx.SetCutType(0);
  307. }
  308. if (document.getElementById("Radio2").checked) {
  309. axOcx.SetCutType(1);
  310. }
  311. if (document.getElementById("Radio3").checked) {
  312. axOcx.SetCutType(2);
  313. }
  314. }
  315. //设置文件格式
  316. function SetFileFormat() {
  317. var obj = document.getElementById("FileFormat");
  318. axOcx.SetImageFormat(obj.selectedIndex);
  319. }
  320. //去底色
  321. function SetDeleteBgColor() {
  322. var obj = document.getElementById("Checkbox1");
  323. if (obj.checked) {
  324. axOcx.SetDeleteBgColor(1);
  325. }
  326. else {
  327. axOcx.SetDeleteBgColor(0);
  328. }
  329. }
  330. //上传
  331. function HttpUploadFile() {
  332. var filePath = "C:\\test.jpg";
  333. //var url = "http://192.168.1.80/MyServletTest/upload";
  334. var url = "http://localhost:4523/UploadFile.ashx";
  335. var iRest = axOcx.UploadFile(url, filePath);
  336. if(iRest=="fail")
  337. ShowInfo("上传失败!");
  338. else
  339. ShowInfo("上传成功. 后台返回内容:" + iRest);
  340. }
  341. //*************读取身份证**************************
  342. function ReadIdCard() {
  343. var iRest = axOcx.readCard();
  344. if (iRest == 0) {
  345. document.getElementById("CardName").value = axOcx.GetCardInfo(0);
  346. document.getElementById("CardSex").value = axOcx.GetCardInfo(1);
  347. document.getElementById("CardNation").value = axOcx.GetCardInfo(2);
  348. document.getElementById("CardBorn").value = axOcx.GetCardInfo(3);
  349. document.getElementById("CardAddress").value = axOcx.GetCardInfo(4);
  350. document.getElementById("CardNum").value = axOcx.GetCardInfo(5);
  351. document.getElementById("CardIssuedAt").value = axOcx.GetCardInfo(6);
  352. document.getElementById("CardEffectDate").value = axOcx.GetCardInfo(7) + "-" + axOcx.GetCardInfo(8);
  353. var obj = document.getElementById("IdCardPhoto");
  354. obj.src = "data:;base64," + axOcx.GetCardInfo(10);
  355. ShowInfo("读卡成功");
  356. }
  357. else
  358. ShowInfo("读卡失败!");
  359. }
  360. //*************人脸识别部分**************************
  361. //打开单目摄像头
  362. function OpenSingleFaceDevice() {
  363. var iRest = axOcx.OpenSingleFaceDevice();
  364. if(iRest!=0)
  365. ShowInfo("开启单目人脸摄像头失败!");
  366. else
  367. ShowInfo("开启单目人脸摄像头成功");
  368. }
  369. //关闭单目摄像头
  370. function CloseSingleFaceDevice() {
  371. axOcx.CloseSingleFaceDevice();
  372. ShowInfo("关闭单目人脸摄像头");
  373. }
  374. //打开双目摄像头
  375. function OpenDualFaceDevice() {
  376. var iRest = axOcx.OpenDualFaceDevice();
  377. if (iRest != 0)
  378. ShowInfo("开启双目人脸摄像头失败!");
  379. else
  380. ShowInfo("开启双目人脸摄像头成功");
  381. }
  382. //关闭双目摄像头
  383. function CloseDualFaceDevice() {
  384. axOcx.CloseDualFaceDevice();
  385. ShowInfo("关闭双目人脸摄像头");
  386. }
  387. //两张图片比对
  388. function FaceImageCompare() {
  389. var imgpath1 = "D:\\face1.jpg";
  390. var imgpath2 = "D:\\face2.jpg";
  391. var iRest = axOcx.FaceImageCompare(imgpath1, imgpath2);
  392. if(iRest==0)
  393. ShowInfo("比对通过,验证为同一个人");
  394. else
  395. ShowInfo("比对失败! 验证不通过!");
  396. }
  397. //图片与人脸摄像头检测到的人脸图像比对
  398. function FaceFromCameraCompare() {
  399. var imgpath1 = "D:\\face1.jpg";
  400. var iRest = axOcx.FaceFromCameraCompare(imgpath1);
  401. if (iRest == 0)
  402. ShowInfo("比对通过,验证为同一个人");
  403. else
  404. ShowInfo("比对失败! 验证不通过!");
  405. }
  406. //获取检测到的人脸图像
  407. function GetFaceImageFromCam() {
  408. var path = "D:\\face1.jpg";
  409. var iRestStr = axOcx.GetFaceImageFromCam(path);
  410. if (iRestStr == "fail") {
  411. ShowInfo("获取检测到的人脸图像失败!");
  412. }
  413. else {
  414. var showImgCtl = document.getElementById("img1");
  415. showImgCtl.src = "data:;base64," + iRestStr;
  416. ShowInfo("获取检测到的人脸图像,图片位置:" + path);
  417. }
  418. }
  419. //人脸摄像头拍照
  420. function FaceCameraCapture() {
  421. var path = "D:\\face2.jpg";
  422. var iRestStr = axOcx.FaceCameraCapture(path);
  423. if (iRestStr == "fail") {
  424. ShowInfo("人脸摄像头拍照失败!");
  425. }
  426. else {
  427. var showImgCtl = document.getElementById("img1");
  428. showImgCtl.src = "data:;base64," + iRestStr;
  429. ShowInfo("人脸摄像头拍照完成,图片位置:" + path);
  430. }
  431. }
  432. //////////////////////////////////////////
  433. function StartRec() {
  434. var videoPath = "D:\\videotest.avi";
  435. var iRest = axOcx.Start_REC(videoPath, 8);
  436. if (iRest == 0)
  437. ShowInfo("开始录像");
  438. else
  439. ShowInfo("开始录像失败!");
  440. }
  441. function StopRec() {
  442. var iRest = axOcx.Stop_REC();
  443. ShowInfo("停止录像");
  444. }
  445. </script>
  446. <script language="javascript" for="axOcx" event="CheckLivingBody(flag)" type="text/javascript">
  447. alert("事件触发");
  448. </script>
  449. </head>
  450. <body onload="InitLoad();OpenDevice()" onunload="CloseDevice()">
  451. <div style="width:600px; height: 700px; border: 1px solid white; background:#C7EDCC; float:left">
  452. <!--[if IE]>
  453. <object classid="clsid:42BEFDDA-49E3-4851-9031-DC56ADA62756" id="axOcx" style=" width:100%; height:400px" ></object>
  454. <![endif]-->
  455. <!--[if !IE]> -->
  456. <object type="application/x-camera" clsid="{42BEFDDA-49E3-4851-9031-DC56ADA62756}" id="axOcx" style=" width:100%; height:400px" >
  457. </object>
  458. <!-- <![endif]-->
  459. <div align="left" style=" width:100%; height:32px">
  460. <input type = "button" value = "放大" onclick = "Zoom(0);" style="height: 30px" />
  461. <input type = "button" value = "缩小" onclick = "Zoom(1);" style="height: 30px" />
  462. <input type = "button" value = "左旋" onclick = "SetRoate(0);" style="height: 30px" />
  463. <input type = "button" value = "右旋" onclick = "SetRoate(1);" style="height: 30px" />
  464. <input type = "button" value = "1:1" onclick = "TrueSize();" style="height: 30px" />
  465. <input type = "button" value = "适屏" onclick = "BestSize();" style="height: 30px" />
  466. <input type = "button" value = "对焦" onclick = "ManualToFocus();" style="height: 30px" />
  467. <input type = "button" id="CaptureBt" value = " 拍照 " onclick = "Capture();" style="height: 30px" />
  468. <input type = "button" value = "读身份证" onclick = "ReadIdCard();" style="height: 30px" />
  469. </div>
  470. <div align="left" style=" width:100%; height:32px">
  471. <input type = "button" value = " 设置 " onclick = "SetParams();" style="height: 30px" />
  472. <input type = "button" value = " 上传 " onclick = "HttpUploadFile();" style="height: 30px" />
  473. <input type = "button" value = "二维码识别" onclick = "GetQrBarCodeContent();" style="height: 30px" />
  474. <input type = "button" value = "添加图片到PDF" onclick = "AddImageToPDF()" style="height: 30px"/>
  475. <input type = "button" value = "合并PDF" onclick = "CombineToPDF()" style="height: 30px"/>
  476. <input type = "button" value = "开始录像" onclick = "StartRec()" style="height: 30px"/>
  477. <input type = "button" value = "停止录像" onclick = "StopRec()" style="height: 30px"/>
  478. <input id="Checkbox1" type="checkbox" onclick = "SetDeleteBgColor()"/>去底色
  479. </div>
  480. <br />
  481. <div align="left" style=" width:100%; height:32px">
  482. <input type = "button" value = "开启单目人脸摄像头" onclick = "OpenSingleFaceDevice()" style="height: 30px"/>
  483. <input type = "button" value = "关闭单目人脸摄像头" onclick = "CloseSingleFaceDevice()" style="height: 30px"/>
  484. <input type = "button" value = "开启双目人脸摄像头" onclick = "OpenDualFaceDevice()" style="height: 30px"/>
  485. <input type = "button" value = "关闭双目人脸摄像头" onclick = "CloseDualFaceDevice()" style="height: 30px"/>
  486. </div>
  487. <div align="left" style=" width:100%; height:32px">
  488. <input type = "button" value = "获取检测的人脸图片" onclick = "GetFaceImageFromCam()" style="height: 30px"/>
  489. <input type = "button" value = "人脸摄像头拍照" onclick = "FaceCameraCapture()" style="height: 30px"/>
  490. <input type = "button" value = "人脸图片比对" onclick = "FaceImageCompare()" style="height: 30px"/>
  491. <input type = "button" value = "人脸图片与摄像头人脸比对" onclick = "FaceFromCameraCompare()" style="height: 30px"/>
  492. </div>
  493. <div style="width:100%; height: 120px" align="left" >
  494. <textarea id="TextArea1" style=" width:596px; height:120px" cols="20" rows="5"></textarea>
  495. </div>
  496. </div>
  497. <div style="width:210px; height: 700px; border: 1px solid white; background:#C7EDCC; float:left">
  498. <div style="width:100%; height: 32px" align="left" >
  499. <img id="img1" src="" style="width: 160px;height: 160px" /> <br /> <br />
  500. 设 备:
  501. <select id="Device" name="D1" onchange = "SelectDevice()" style="width:145px"> </select> <br />
  502. 分辨率:
  503. <select id="Resolution" name="D2" onchange = "SelectResolution()" style="width:138px" > </select> <br />
  504. 文件格式:
  505. <select id="FileFormat" onchange = "SetFileFormat()">
  506. <option value="0">jpg</option>
  507. <option value="1">bmp</option>
  508. <option value="2">png</option>
  509. <option value="3">tif</option>
  510. <option value="4">gif</option>
  511. <option value="5">pdf</option>
  512. </select>
  513. <br />
  514. <br /> 拍摄模式: <br />
  515. <input id="Radio1" name="R1" type="radio" value="V1" onclick="SetCaptrueMode()" checked="checked"/>不裁切
  516. <input id="Radio2" name="R1" type="radio" value="V2" onclick="SetCaptrueMode()"/>自动裁切<br />
  517. <input id="Radio3" name="R1" type="radio" value="V3" onclick="SetCaptrueMode()"/>手动裁切<br />
  518. <br />身份证信息 <br />
  519. <img id="IdCardPhoto" src="" style="width: 80px;height: 100px;" />
  520. <br />
  521. 姓名
  522. <input id="CardName" type="text" style="width: 100px"/> <br />
  523. 性别
  524. <input id="CardSex" type="text" style="width: 50px"/>
  525. 民族
  526. <input id="CardNation" type="text" style="width: 55px"/> <br />
  527. 出生
  528. <input id="CardBorn" type="text" style="width: 100px"/> <br />
  529. 住址
  530. <br />
  531. <textarea id="CardAddress" cols="20" rows="3" style="width:200px"></textarea>
  532. 身份证号码
  533. <br />
  534. <input id="CardNum" type="text" style="width: 200px"/> <br />
  535. 签发机关
  536. <input id="CardIssuedAt" type="text" style="width: 128px"/> <br />
  537. 有效期限
  538. <input id="CardEffectDate" type="text" style="width: 128px"/> <br />
  539. </div>
  540. </div>
  541. </body>
  542. </html>