有可能用谷歌应用程序脚本扫描二维码吗



我想使用谷歌应用程序脚本创建一个web应用程序(因为这是我唯一有web应用程序经验的平台(,它可以扫描二维码并返回数据。

我已经做了一些挖掘,但我找不到任何关于使用GAS网络应用程序访问和读取相机的信息。有人知道是否有办法做到这一点吗?

目标是拥有一个网络应用程序,可以扫描二维码并在谷歌表单中搜索与该二维码链接的物品。我可以做任何事情,但让相机打开/扫描(如果可能的话(。

TIA-

您可以按照以下集成minhaz解决方案

gs

function onOpen() {
SpreadsheetApp.getUi() // Or DocumentApp or SlidesApp or FormApp.
.createMenu('QRCode')
.addItem('Open QRCode reader', 'showDialog')
.addToUi();
}
function showDialog() {
var html = HtmlService.createHtmlOutputFromFile('Page')
.setWidth(600)
.setHeight(480);
SpreadsheetApp.getUi().showModalDialog(html, 'QRCode reader');
}
function getQRCode(txt){
SpreadsheetApp.getActiveRange().setValue(txt)
}

Page.html

<!DOCTYPE html>
<html>
<head>
<script src="https://unpkg.com/html5-qrcode"></script>
</head>
<body>
<div id="qr-reader" style="width:500px"></div>
<script>
var resultContainer = document.getElementById('qr-reader-results');
function onScanSuccess(decodedText, decodedResult) {
google.script.run.getQRCode(decodedText); 
google.script.host.close();
}
var html5QrcodeScanner = new Html5QrcodeScanner("qr-reader", { fps: 10, qrbox: 250 });
html5QrcodeScanner.render(onScanSuccess);
</script>
</body>
</html>

然后根据您的需要调整gs代码中的getQRCode函数。

简单的答案是可能的,但过程会很复杂。有一个变通办法,但没有来自应用程序脚本的直接库,所以您需要使用第三方API。谷歌应用程序脚本本身并没有内置的功能/方法/服务。

建议

我从@Tanaike找到了这个参考链接。

使用GAS读取二维码:使用谷歌应用程序脚本解码谷歌幻灯片上的二维码

从这里,您可以使用脚本从QR中获取数据。这里有一个你可以尝试的变通方法:

1.(从Web应用程序中,这里有一个使用谷歌脚本网站访问相机的参考链接:从谷歌脚本网站上访问相机。您可以进一步研究如何连接此脚本来捕获图像。

2.(从那里,将图像保存到您的文档/工作表中。

3.(使用Tanaike的脚本对捕获的图像和表单中的图像进行解码和比较数据。

请注意,这只是一个总体想法,但可能还有其他方法/解决方案可以使用高级JavaScript以更优化的方式解决此问题。

最新更新