Atom Electron:在另一个窗口中渲染画布

时间:2016-04-14 14:28:10

标签: javascript html5 canvas angular electron

我有一个带有两个UIPickerView, viewForRow row: Int, forComponent component: Int, reusingView view: UIView?) -> UIView { 的电子应用。第一个管理多个媒体流,这些媒体流被渲染到画布上。在浏览器中运行应用程序时,我可以使用BrowserWindows提供的文档引用在弹出窗口中访问画布。 Electron可以这样吗?

是否可以使用window.open()CanvasRenderingContext2D传递到另一个窗口?或者通过全球主流程?

2 个答案:

答案 0 :(得分:2)

ipcRendereripcMain不支持像对象或函数那样的复杂事物传输。您需要将指令从第一个BrowserWindow发送到主进程,然后主进程应该向您应该处理它的第二个窗口发送一条指令(如字符串)。

如果要传输流,则必须创建localhost服务器并使用套接字库(socket.io),以及相应的npm包,例如socket.io-stream

答案 1 :(得分:1)

也许WebRTC可以为您服务,例如:http://www.html5rocks.com/en/tutorials/webrtc/basics/