javascript - 使用 javascript 将 DataView 对象转换为位图
问题描述
我正在尝试使用webusb
api 从 USB 生物识别指纹读取器设备获取图像。从设备返回的数据是一个DataView()
(类型化数组?arraybuffer?)。我用谷歌搜索,找不到从这个数据视图对象转换/提取图像的方法。它是javascript的黑洞吗?我会很感激任何想法。
记录的返回数据:
DataView(512)
ArrayBuffer(512)
[[Int8Array]]: Int8Array(512) [19, 1, …]
[[Int16Array]]: Int16Array(256) [275, 310, …]
[[Int32Array]]: Int32Array(128) [20316435, 22806905, …]
[[Uint8Array]]: Uint8Array(512) [19, 1, ..]
解决方案
为方便起见,结果作为 DataView 返回,如果您需要它作为 ArrayBuffer 只需访问该buffer
属性。您可以从 ArrayBuffer 构造另一种类型的数组,或者如果您想将数据视为图像,请将其转换为数据 URL 以在标签中使用。
推荐阅读
- scala - Scala:调用带有/不带()的方法,带有可覆盖的隐式
- apache-spark - 如何在 Spark 中将 FileInputStream/Source.fromFile 转换为数据框?
- hadoop - YARN 无法找到或加载主类 org.apache.hadoop.mapreduce.v2.app.MRAppMaster
- cassandra - 创建密钥空间时出现错误“无法找到复制策略类 'org.apache.cassandra.locator.simplestrategy”
- sql-server - 在 T-SQL 中将来自不同主题的数据查询到一个结果集中
- javascript - jQuery 中追加的变量不可用?
- html - vaadin 对话框中的 Vaadin 10 插槽
- javascript - 当路由角度发生变化时,外部 js 库不起作用
- python - 将两个 Pandas 数据帧加在一起的关键错误
- reactjs - TypeError:无法读取酶中未定义的“道具”