当前位置: 首页 > wzjs >正文

建材网站长工具seo域名解析不了

建材网,站长工具seo域名解析不了,怀来县建设局网站,上海市起因 为了实现在报销流程中,发票不能重用的限制,发票上传后,希望能读出发票号,并记录发票号已用,下次不再可用于报销。 基于上面的需求,研究了OCR 的方式和读PDF的方式,实际是可行的&#xff…

起因

为了实现在报销流程中,发票不能重用的限制,发票上传后,希望能读出发票号,并记录发票号已用,下次不再可用于报销。

基于上面的需求,研究了OCR 的方式和读PDF的方式,实际是可行的,但是因为都是使用了本地化的组件库,只能在服务器端实现。对于目前 OA 流程的使用并不方便。又研究了一下 JS 的处理办法,找到了两个脚本库,可以使用。jsQR.js 和 pdf.js ,可以通过识别发票里的二维码间接取到发票号。

下面做了两个简单使用的例子,验证的可行性。记录一下备用。

实例1 存图片模式

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>读发票的二维码信息-图片版</title><script src="https://cozmo.github.io/jsQR/jsQR.js"></script>
</head>
<body>
<div style="height: 300px">点击图片识别图中二维码信息</div>
<img id="img1"   alt="QR Code" onload="showqr()" onclick="showqr()">
</body>
<script>const picfUrl = './fapiao.png'; // 替换为你的 发票 图片 文件路径function showqr(){const canvas = document.createElement('canvas');const context = canvas.getContext('2d');canvas.width = img1.width;canvas.height = img1.height;context.drawImage(img1, 0, 0);const imageData = context.getImageData(0, 0, canvas.width, canvas.height);const code = jsQR(imageData.data, imageData.width, imageData.height);alert(code.data);}img1.src=picfUrl
</script>
</html>

实例2 PDF格式

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>读发票二维码信息-pdf版</title><script src="https://cozmo.github.io/jsQR/jsQR.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/pdf.js/3.11.174/pdf.min.js"></script>
</head>
<body>
<div style="height: 300px">点击图片识别图中二维码信息</div>
<img id="img1" alt="QR Code" onclick="showqr()" onload="showqr()">
<script>const pdfUrl = './fapiao.pdf'; // 替换为你的 发票 PDF 文件路径// 加载 PDF 文件pdfjsLib.getDocument(pdfUrl).promise.then(pdfDoc => {console.log(`PDF 文件加载成功,共 ${pdfDoc.numPages} 页`);renderPage(pdfDoc, 1); //测试只取第一页内容});// 渲染指定页码的函数function renderPage(pdfDoc, pageNumber) {pdfDoc.getPage(pageNumber).then(page => {const scale = 1; // 放大,可以增加二维码清晰度const viewport = page.getViewport({scale});// 创建 canvas 元素const canvas = document.createElement('canvas');const context = canvas.getContext('2d');canvas.width = viewport.widthcanvas.height = viewport.height;//img1.width = viewport.width;//img1.height = viewport.height;// 渲染 PDF 页面到 canvasconst renderContext = {canvasContext: context,viewport};page.render(renderContext).promise.then(() => {const imageData = canvas.toDataURL('image/png');img1.src = imageData;});});};function showqr() {const canvas = document.createElement('canvas');const context = canvas.getContext('2d');context.drawImage(img1, 0, 0);const imageData = context.getImageData(0, 0, canvas.width, canvas.height);console.log(imageData)const code = jsQR(imageData.data, imageData.width, imageData.height);alert(code.data);}
</script>
</body>
</html>

http://www.dtcms.com/wzjs/587450.html

相关文章:

  • 什么网站好建设网站可以叫做系统吗
  • 国内做网站好的公司盘县网站建设
  • 哪个网站可以给图片做链接wordpress 网银支付宝
  • 网站建设征集意见谷歌云做网站服务器
  • 网上商城网站开发深入解析wordpress(原书第2版) pdf
  • 电影网站制作教程加强网站信息建设
  • 伪静态 多个网站昆明智能建站
  • asp.net 做网站恺英网络公司现状
  • 郑州网站外包公司建设银行网站官网网址
  • 百度网站提交收录入口苏宁易购商城
  • 专门做布料的网站专题网站建设方案
  • 如何看网站建立时间涟源市建设局网站
  • 电子商务网站系统规划报告阿里虚拟机建设网站
  • 德阳市建设局官方网站网站关键字让别人做超链接了怎么办
  • 个人网站备案经验网站icp是什么意思
  • 电脑页面设计怎么弄志鸿优化网
  • ftp发布asp.net网站一个域名权重3如果做网站的话权重会降为0吗
  • 目前做网站最流行的程序语言帮别人备案网站吗
  • 嘉兴网站制作套餐做app的网站有哪些
  • 中国建设银行行网站网上做效果图的平台
  • 怎么做有邀请码的网站站外营销有哪几种主流方式
  • php网站 源码想学做网站可以在哪学
  • 做网站第一步要干啥asp.net 网站 相册
  • 汤原建设局网站深圳市建设注册执业资格中心网站
  • 安徽定制型网站建设推广网站建设商标保护
  • 做网站还能赚钱吗品牌策划 网站源码
  • 郑州市哪里有网站建设wordpress调用置顶文章
  • 网站流量数据分析杭州市做外贸网站的公司
  • 网站建设老李教学网站南宁市做网站
  • 南阳网站网站建设江苏省住房城乡建设厅官方网站