2013-03-10 60 views
1

如何将浏览器外部运行的程序的输出绘制到画布上?我正在考虑使用虚拟帧缓冲区,但我不确定如何进行该过程。我认为必须进行一些中间处理或用JavaScript作为媒介映射像素数据。通过虚拟帧缓冲设备绘制到HTML5画布

有没有人有任何建议或见解,他们可以提供?

谢谢

+0

什么类型的输出是外部程序生成 - 图像,文本,矢量?根据输出结果,画布可能会或可能不是一个好的选择。 – markE 2013-03-10 23:16:06

+0

输出将主要由图像和少量文本组成。 – 2013-03-10 23:19:03

+1

画布能够使用canvas.context.drawImage()和使用canvas.context.fillText()的文本进行图像处理。画布能够渲染30-60fps的视频,并为每一帧添加一个标题 - 而且相当容易。这里是一篇关于如何捕捉视频并绘制到画布上的博客文章。 – markE 2013-03-10 23:31:15

回答

1

感谢MarkE和Philipp的推动,我发现什么似乎是合适解决方案的开始。

尽管它并不直接涉及framebuffer,但我发现Guacamole是一个HTML5远程桌面网关,http://guac-dev.org/它只使用Ajax和HTML5在浏览器中使用vnc或RDP协议在远程系统的桌面上呈现。它的开源,是我认为的一个合适的起点。

1

HTML5画布不是为了这样做而设计的。它的目的是从网上读取图像(或视频)数据并显示它,无论是正常的http下载还是xmlHttpRequest。当您需要将外部应用程序生成的图像数据导入Web浏览器的JavaScript引擎时,您需要将该图像数据公开为Web服务。

0

我知道这个线程是有点老了......

作为替代Guacamole(Linux的/阿帕奇/ Java的),你可以看看到Myrtille,(在Windows/IIS/C#)。它适用于HTML4(使用div和xhr)和HTML5(使用canvas和websockets)。