问题标签 [vector-graphics]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
11328 浏览

cross-browser - 在浏览器中显示矢量图形

我需要在我正在处理的网站中显示一些交互式(附加 DOM 侦听器等和事件处理)矢量图形。W3C 推荐了 SVG,尽管 Internet Explorer 支持仍然无法识别这种格式,这是必须的(对于公共网站)。IE 处理 VML,甚至还有一些 JavaScript 库可以根据浏览器(SVG 与 VML)进行一些类似画布的绘图 - excanvasDojo Toolkit 的 GFX等等。尽管它们都不能从给定的标记中显示 SVG 图像,但这会很好并且可以接受。

所以这个问题实际上由几个部分组成:

  1. 是否有任何跨浏览器 Javascript 库可以显示来自给定标记(不是强制性 SVG)的矢量图形并提供附加到 DOM 事件的可用性?
  2. 如果没有,哪种最流行的嵌入式浏览器技术最适合做这样的任务?我可以从 Flex/Flash、Java 小程序中进行选择。由于 Windows 锁定,Silverlight 不是一个选项。

[编辑]谢谢大家的意见/建议。以下只是我对此事的一些随机笔记/结论:

  • 我需要的交互性级别是能够检测正在显示的矢量图像上的 DOM 事件——鼠标悬停、鼠标悬停、单击等——以及对它们做出反应的能力,比如改变背景颜色、显示对话框等。
  • 坚持使用 SVG 格式的想法非常好,因为它在许多浏览器上都是原生的,除了最流行的浏览器 - IE。在尝试显示动态 SVG 之后,我意识到 IE 版本 7 是最有问题的。由于浏览器不兼容,有太多麻烦。
  • Cake 似乎是一个很棒的 Javascript 框架,尽管我无法获得在 IE7 上运行的示例。
  • Java Applets - 我最喜欢这个想法,因为我可以使用 Apache Batik 库,一个高质量的 SVG 渲染器。但是,Batik 是一个非常大的库,我负担不起部署一个只有几兆字节的小程序。
  • 我决定坚持使用 Flex 选项。我找到了一个不错的矢量图形库Degrafa。它使用自己的标记格式,但是它识别 SVG 路径表示法,因此在我的情况下,使用 XSLT 转换我的 SVG 或仅解析它们将非常容易。

[编辑 2 ] 出现了更多评论。我想澄清一下,“Windows 锁定”是指 Silverlight 通常在 Windows 上运行的情况,更具体地说,是 IE。我怀疑它是否是其他系统上可接受的解决方案(例如 Flash 或 Java Applet)。是的,我毫不怀疑可以在任何系统上启动 Silverlight 应用程序,尽管我担心这对普通用户来说会花费太多精力。

@Akira:您对 IE7 上的那些“SVG 渲染器”有什么问题吗?我总是抛出 Javascript 错误。

0 投票
4 回答
5654 浏览

graphics - 我需要一种算法来渲染软画笔笔触

我有一组鼠标点、一个笔画宽度和一个柔软度。我可以画出柔和的圆圈和柔和的线条。我应该使用哪种算法来绘制我的点数组?我希望交叉线看起来像端点一样漂亮。

0 投票
9 回答
3066 浏览

math - 点序列插值

给定空间中的任意点序列,如何在它们之间产生平滑的连续插值?

欢迎使用 2D 和 3D 解决方案。以任意粒度生成点列表的解决方案以及为贝塞尔曲线生成控制点的解决方案也受到赞赏。

此外,看到一个迭代解决方案可以在接收点时近似曲线的早期部分,这将是很酷的,因此您可以使用它进行绘制。

0 投票
2 回答
1656 浏览

php - 交互式 SVG - 学习资源?

有没有人学习如何使用 php/mysql(可能还有 php-gtk)实现 SVG 的资源?我正在考虑制作一个自上而下的花园设计师,使用拖放预定义元素(如树木/灌木)和可定义的种植区域(圆形/正方形)。然后,园丁可以随着时间的推移跟踪某个区域的种植效果。

我真的不想进入flash...

0 投票
4 回答
10391 浏览

wpf - 如何将 Illustrator 文件转换为 WPF 的路径

我们的图形人员使用 Adob​​e Illustrator,我们想在 WPF 应用程序中使用她的图像作为路径。有没有办法做到这一点?

0 投票
2 回答
900 浏览

c# - 在弯曲的路径上绘制形状或图像

我正在寻找一个绘图库或代码示例来绘制沿着可能弯曲的路径重复的图像或矢量形状。

我找到了一个可可库,这是我正在寻找的http://apptree.net/drawkitmain.htm但对于 .NET。

0 投票
3 回答
1540 浏览

file-format - 用于保存基于矢量的 3D 图形的格式

我编写了一个基于矢量的 3D 编辑器(UI 自定义有点像技术图纸)。我现在想以可移植格式保存矢量/绘图数据。哪些格式可用;其中哪一个(一个?)是最被广泛接受的,我在哪里可以获得格式规范?

0 投票
5 回答
2851 浏览

vector-graphics - 将光栅图像转换为矢量图形的建议

如果有人希望将大量光栅图像批量转换为矢量图形,是否有任何工具可以做到这一点?

例如,想想任何具有标准形状(椭圆、矩形)和文本的图表。

0 投票
1 回答
560 浏览

c - C中图形的线性代数

我正在开发写入微型 LCD 屏幕(小于 1" x 1")的软件。

我有所有常见的嫌疑人——线条、填充的多边形、字体等。

然而,我记得很多个月前学习如何在线性代数中进行有趣的矢量操作,并创建旋转线框对象。

我想再做一次,但认为必须有一个快速而肮脏的教程和/或 C 中的简单向量库来完成所有繁重的工作,这样我就可以跳过实现并直接进入眼睛糖果。

任何指针?

-亚当

0 投票
5 回答
2761 浏览

css - 是否可以通过 CSS 将 SVG 图像添加到网页?

我刚开始在网页中尝试使用 SVG,我发现只能使用<object />标签将 SVG 图像添加到 HTML 中,这<img />与我预期的不同。大多数时候,我通过 CSS 向网页添加图形,因为它们是网站展示的一部分,而不是内容。

我知道可以将 CSS应用于SVG,但是否可以使用纯 CSS 将矢量图像添加到 HTML 元素?