0

我会尽量做到最具体。我有一个 Django 项目,我希望能够绘制某个地方的内部地图。我的意思是重要对象的图形表示,如桌子位置、浴室等。我试图避免使用 Flash。是否有我可以使用的现有 API?或者我怎样才能让这个东西工作?

我并不是要在 3d 中绘制一些东西,只是从上面看一个简单的视图,就像一个蓝图。

提前致谢。

4

1 回答 1

2

假设您的意思是在浏览器中以交互方式绘制计划,而不是谷歌地图意义上的地图,您需要 HTML5 画布或 SVG 之类的东西,以及诸如 fabric.js(用于画布)或 Raphael(用于 SVG)之类的库。然后,您的 JS 代码将处理从鼠标输入绘制线条的机制,在浏览器中生成图片。然后,您可以使用 JS 提取该图片并将其传递回服务器以保存为 PNG 或其他格式。

如果你的目标是现代浏览器,canvas 绝对是最好的选择——它是一个更好的 API,有更好的库 (IMO),并且更容易从中提取 PNG。SVG 还不错,但要取出 PNG 是很棘手的——它依赖于 hack(在 JS 中将 SVG 转换为画布,将其渲染为不可见元素,然后将其转换为 PNG!)或将整个 SVG 发送到服务器在那里渲染。

我最近实现了一些需要非常相似的机制的东西,尽管目的非常不同,所以如果您有任何更详细的问题,请随时提出。

于 2012-08-30T18:47:17.637 回答