【问题标题】:Convert an Adobe Illustrator vector image to Open GL将 Adob​​e Illustrator 矢量图像转换为 Open GL
【发布时间】:2012-11-06 17:29:49
【问题描述】:

如何获取 Adob​​e Illustrator 生成的矢量并获得在 Open GL 调用中再现图像所需的点?

我想要做的是获取一些我的二维艺术作品,并直接在我的程序上制作它。这将允许我支持我可能需要的任何分辨率,同时看起来仍然清晰,并且可能还节省一些内存。我只是不知道如何实现它。最终,这将用于 Android 编程。

【问题讨论】:

    标签: opengl-es vector-graphics adobe-illustrator


    【解决方案1】:

    在 Illustrator 文件中使用 Inkscape 的命令行--export-plain-svg。这不是一个完美的转换(尤其是字体),但它可以完成工作。

    任何人都知道 Cairo 是否有类似于 --export-plain-svg 的东西,因为 Inkscape 是基于它并且它是如此低级(更快)?

    【讨论】:

      【解决方案2】:

      OpenGL 不是一个很好的绘制 2D 矢量图形插图的 API。这些通常包含许多弯曲的补丁(Bezier 和/或 NURBS),必须先将其分解为三角形,然后才能使用 OpenGL 绘制。

      还有一个名为 OpenVG 的 API 专门用于支持绘制 2D 矢量插图。一些 OpenVG 实现支持 OpenGL 交互。并且一些 OpenVG 实现确实使用 OpenGL 作为它们的后端。

      另一个选择也是目前更可行的方法是使用矢量图形绘图库,它使用 OpenGL 作为后端。其中一个库是Cairo,它还提供了一个 SVG 文件阅读器。

      Adobe Illustrator (.ai) 是一种专有格式,所以我宁愿不使用它。但是 Illustrator 可以很好地导出到 SVG,Cairo 可以很好地读取和绘制 Illustrator 生成的 SVG 文件。

      【讨论】:

      • 可惜AI不能直接做到这一点……不过,我理解它背后的原因。
      • @Pearsonartphoto:OpenGL 是一种绘图 API,而不是图形文件格式。尝试将图形存储为 OpenGL 命令链几乎没有意义。
      • 我想这对我来说是有意义的,因为从本质上讲,您是通过将各个部分放在一起来绘制图像。但也许我就是那样疯狂......
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多