用于在画布上显示图像的简单 websocket

Posted

技术标签:

【中文标题】用于在画布上显示图像的简单 websocket【英文标题】:Simple websocket for displaying an image to canvas 【发布时间】:2012-01-29 10:50:55 【问题描述】:

我想创建一个交互式应用程序:

服务器(python): 我想在 python 中创建一个简单的 websocket 服务器,它将负责生成并为套接字提供图像。

客户端(HTML5、HTML5-canvas): 我想从 python websocket 服务器接收图像并将它们显示在 html5 画布中。

有人有类似的示例代码吗?

【问题讨论】:

还可以考虑使用Server Sent Events 而不是 Web Sockets,因为它们看起来更适合您的要求。 github.com/adicu/pantograph 实现了您的用例 【参考方案1】:

这是我的简约示例,您可能会觉得有用:

hello-websocket

它具有从网络摄像头捕获图像的附加组件。但是客户端/服务器交互的基础知识已经有了。

【讨论】:

【参考方案2】:

您的用例范围很窄,所以不要指望找到现成的示例代码。如果您不熟悉 WebSockets,请参考通用教程。可以这样做:

1) 选择任何你想要的 Python Websocket 库

2) 通过套接字将图像作为二进制消息发送

3) 在客户端使用 javascript Image object() dataURI source 解析图片

https://developer.mozilla.org/en/data_URIs

4) 在<canvas>上绘制图像

请注意,如果您只是希望一张一张地显示图像,则无需执行第 4 步。

【讨论】:

感谢您的回答。我尝试从一个简单的 Web 套接字开始,但遇到了很多问题。请查看http://***.com/questions/9053526/python-websocket-not-working

以上是关于用于在画布上显示图像的简单 websocket的主要内容,如果未能解决你的问题,请参考以下文章

所选图像未显示在画布上

为啥我的图像不会显示在 javascript 画布上?

单击按钮时如何保存画布绘图并显示它

使用 Retina 显示屏在画布上绘制图像

HTML Canvas Compositing:在另一个画布下显示画布图像

打开新Tkinter窗口时图像不显示在画布上