User interface 编写基于SVG的桌面应用程序有哪些选项?
比如说,我想编写一个大量使用SVG的桌面应用程序。我可以选择哪些渲染引擎、GUI工具包、库等 我希望:User interface 编写基于SVG的桌面应用程序有哪些选项?,user-interface,unix,svg,desktop-application,User Interface,Unix,Svg,Desktop Application,比如说,我想编写一个大量使用SVG的桌面应用程序。我可以选择哪些渲染引擎、GUI工具包、库等 我希望: 在Linux/Unix/Mac上平稳运行(到处都有抗锯齿功能) 开源 与标准SVG兼容(例如不透明度、嵌入式光栅图形) 可使用现代动态语言(Python、Ruby、Lisp等)访问 e、 从这个意义上讲,基于g.C的解决方案将是完美的 那么,我的选择是什么呢?我建议,Cairo是一个支持SVG文件输出的二维图形库 cairoapi提供了类似于的绘图操作符的操作 PostScript和PDF
- e、 从这个意义上讲,基于g.C的解决方案将是完美的
轻松地将PS-、PDF-、SVG等功能集成到OpenGL应用程序中(可能需要其他库)。
Cairo是自由软件,可以重新分发和/或
根据GNU或一般公众的条款进行修改
许可证(LGPL)版本2.1或Mozilla公共许可证(MPL)版本
1.1由您选择
考虑到Safari浏览器,它在Mac上运行平稳。您可以使用Raphael库编写应用程序 该数据库显示拉斐尔语言,页面本身是纯矢量图形 只是用你的方式看看它是否符合你的限制 似乎是你最好的选择。您可以编写Ruby、Python或JavaScript应用程序,并使用HTML和CSS作为GUI。也有,但它不是开源的 至于SVG,我找到的最好的库是。乍一看,您可能会觉得它是一个可视化库,但它可以用于任何类型的SVG工作。有人提到,它的优势在于它是跨浏览器的,但是它保留了一些SVG特性,如组
标记,因为它必须在大多数IE版本中使用VML。。Batik是一个基于Java的SVG工具包,可以在任何Java存在的平台上呈现、生成、操作和转换SVG;来自台式机、小程序甚至手持设备。它利用了Java平台独立性的强大功能。它是桌面应用程序的理想选择。它还支持完全交互、链接、脚本和动画
、、等是一些使用蜡染的项目。我不会直接使用cairo。相反,尝试wxWigets 有一个非常有用的wxGraphicsContex类,它可以为您完成开罗的大部分封装和其他很酷的事情。包中甚至有一个SVG演示 还有一个名为“wxcairo”的项目,它使用libsvg
如果您对一个使用SVG作为本机格式的大型项目感兴趣,请看一下“Inkcape”。这是一个用GTK编写的非常好的插图程序。忽略所有关于拉斐尔的讨论,转而使用D3 D3可以读取XML树,并根据您的需求轻松生成SVG代码。这意味着您可以以任何喜欢的方式呈现任何XML文档。这包括所有拉斐尔的作品,还有更多的作品
在今天之前,我没有听说过开罗。但是,根据D3提供的结果,我甚至不会对此进行调查。回答这个问题可能太迟了,我建议使用开源Webkit 这样做的好处如下: 1--将获得对HTML的额外支持,
2--与所有平台、Win、Mac、Linux、iOS、BB兼容
3--在所有平台上,它将使用Cairo库来渲染图形,
4--易于扩展和扩展以添加附加功能 当你说可以使用现代动态语言(Python、Ruby、Lisp等)访问时,你是说你更喜欢用这些语言之一编写应用程序?@Halst你开发过基于svg的应用程序吗?不是开源的吗?他还希望unix和linux的可移植性。我只在浏览器中使用了d3。看起来你不是第一个遇到这种情况的人:(感谢@Kreek的快速回复。实际上,我刚刚删除了我的评论,因为我找到了一种方法让它工作。当它被清理后,我会将一篇博客文章链接到该SO文章。哦,太好了!总是这样,修复错误的保证方法是告诉别人,我的理论是,你的潜意识会启动,并在你打字的时候计算出来。)ng/喋喋不休:)