c++ - 如何写入 Uint8ClampedArray?

标签 c++ html5-canvas v8 node.js-addon

我正在编写一个节点插件,它接受 HTML Canvas 图像数据,其类型为 Uint8ClampedArray。我想修改这个数组的内容而不需要任何额外的拷贝。

我找到的最佳候选者是 v8::Object::Set method (v8::Object 是 Uint8ClampedArray 继承层次结构中的一个类)

但是该方法需要 v8::Context 对象的句柄作为第一个参数。我不知道如何得到它。

我搜索了 github 存储库,并在 Webkit 中找到了直接将 Uint8ClampedArray 指针转换为原始数组指针的代码,但这似乎无法通过公共(public) v8 API 实现。

最佳答案

好的,明白了。

v8::Local<v8::Uint8ClampedArray> arr;
unsigned char *data = (unsigned char *)arr->Buffer()->GetContents().Data();

关于c++ - 如何写入 Uint8ClampedArray?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42139643/

相关文章:

c++ - Hook 非虚类成员函数

javascript - Fabric.js Canvas 图像抗锯齿

C++ 模板特化,明确地调用可能是指针或引用的类型的方法

javascript - HTML Canvas 和 JavaScript - 重新定义选择对象

javascript - 如何使 Canvas 元素面向鼠标指针

javascript - Promise Chaining 如何在内存中工作?

javascript - 是什么使得预解析函数比完整解析更快?

javascript - 如何在服务器上使用 V8 以沙盒模式运行 javascript?

c++ - 我可以在 C++ 中链接多个 .lib

c++ - 位图显示不正确