0

我想创建一个新的应用程序。它基本上是一个 Deep Zoom 应用程序,用户可以在上面绘制注释(将保存到数据库中,以便其他用户可以看到这些注释。)起初它只是简单地在浏览器中运行。但是,如果该应用程序可以被该领域的爱好者使用,它将非常有用,因此在智能手机或其他手持设备上运行的能力将非常有益。3G/4G 信号在这些地方可能实际上不存在,因此能够下载“区域”的所有图像和信息会很好。

我无法决定使用哪种技术。Silverlight Deep Zoom 应用程序在浏览器中看起来非常不错,但我听说它不是一种广泛支持的技术,MS 可能会放弃它,唯一能够运行 Silverlight 的智能手机将是 Windows 手机 = 在智能手机市场。一般来说,Flash 可能永远不会在 iPhone/Apple 产品上运行。那么我应该使用 HTML5 吗?HTML5 现在对我来说似乎有点混乱,是否有可能制作一个用户可以注释的 HTML5 Deep Zoom 应用程序?

任何想法和建议都会非常方便,感谢阅读。

4

1 回答 1

3

几年前,我编写了一个 Deep Zoom 应用程序,它支持注释的概念证明。

我为此使用了 Django,但这不是我推荐的方法。如果我再次做同样的工作,我会使用基于 HTML5 的 CanvasZoom。Canvas Zoom 可以通过 javascript 嵌入到网页中。这里有一个关于如何做到这一点的指南:

一条链接

不幸的是,您需要先在原始图像上运行 Microsoft DeepZoom composer,才能生成 CanvasZoom 将使用的深度缩放数据。如果您希望您的应用程序在浏览器中运行,您可能必须采用以下方法。

  1. 用户选择图像。
  2. 图片上传到服务器
  3. 服务器创建深度缩放信息
  4. 使用基于 PHP 的方法,这样您就有了图像的 canvaszoom 页面。

注释可能会使事情复杂化,我在尝试时使用 javascript 做到了这一点。诀窍是在图像被放大(使用画布缩放时有预设的缩放级别)并重新绘制注释区域时进行计算。我发现这种方法并不简单,但并不过分复杂。

Canvas Zoom 已获得 MIT 许可,因此您可以用它做自己喜欢的事情。

祝你的项目好运。

于 2011-07-15T12:18:10.060 回答