【问题标题】:Multi-user image editing多用户图像编辑
【发布时间】:2013-04-16 14:20:32
【问题描述】:

我是 HTML5 的新手,想知道这是否可行。

我希望能够创建一个画布,我可以在其中加载图像,然后在其上绘制以供其他人查看,并允许他们对其进行更改。

它不必非常复杂,有很多不同的工具,只是基本的东西。我只是希望能够不时更改图像。

这可能吗,如果可以,有人可以指点我看某种教程吗?

【问题讨论】:

  • 如果“多用户”是指两个或更多人可以同时修改图像,您可能需要 node.js:nodejs.org。如果我只是想让别人在修改后看到它,一个基本的sql数据库应该会让你开心。

标签: html image canvas multi-user


【解决方案1】:

你已经知道如何进行非图像协作了吗?

您对任何媒体进行协作编辑的方式几乎相同。

一种媒体和另一种媒体的主要区别在于更新的内容(DOM 元素与绘制事件)。您将遇到的另一件大事与媒介无关,但您是否想使用 AJAX 或 WebSockets 或者您有什么 - 这是一个更多关于您完成协作的方法的问题。

基本概念是(从用户的角度):

  • 提交我自己的更改
  • 通过 AJAX 定期检查是否有其他人进行了更改,或者使用 WebSockets/长轮询来立即通知其他人的更改
  • 根据其他用户的更改更新每个人的视图
  • 如果两个更改不兼容,如果这适用于您的问题,请找出解决冲突的方法
  • 为用户提供一些“撤消”操作的方法

不要自吹自擂,但去年我写了一个名为cortex 的协作草稿/头脑风暴应用程序,我写了blogged about each commit and how I figured out how to do the realtime collaboration。我在 Rails 中使用 AJAX 方法完成了它,但我用于实时协作的概念适用于大多数想要采用类似方法的应用程序。 This post 包含一个视频,模拟两个用户在同一页面上协作,以及来自一个客户端的更新多久/多久显示在另一个客户端浏览器上。

cortex 不是世界上最漂亮或最先进的东西,但我认为它是一个很好的入门应用程序,可以让你了解这些概念。它甚至可能不是最好的设计(这是我的第一个协作应用程序),但我几乎每天都在使用它,而且它似乎运行良好。

【讨论】:

  • 很高兴认识你!我看到你有使用套接字的经验。您是否有关于您有经验的特定套接字库的推荐以及为什么推荐它?我看到 socket.io 和 signalr 很受欢迎,但我希望得到有实际应用 websockets 经验的人的看法。
  • 我其实没做过websockets,我只知道你可以用它们来代替AJAX,假设你的服务器和你想要支持的浏览器可以做到这一点跨度>
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-18
  • 2012-10-12
  • 1970-01-01
  • 2016-04-27
  • 1970-01-01
  • 2012-09-28
相关资源
最近更新 更多