2011-09-06 41 views
3

有没有办法以编程方式创建矢量文件?我工作的公司必须为我们的客户提供矢量资产(最初是用闪光灯设计的,然后元素位置,比例和其他细节都存储在数据库中),我们希望消除人类对实际上创建矢量图形。以编程方式创建矢量文件?

回答

2

SVG是一种开放的XML矢量格式,您可以使用任何XML库轻松创建。看看SVG Primer

+0

你可以在SVG文件中创建图层吗?我们需要将客户的颜色分为不同的层次! – Walker

+0

@Walker Yup,这绝对没有问题。只需使用''元素。随意试用inkscape,并检查保存的文件或选择“编辑 - > XML编辑器...”。 – phihag

3

看看SVG。它基于XML,所以调整位置和颜色只是调整XML元素的pos=属性。

没有任何我知道的用于PHP的SVG库,但创建一个SVG图像就像创建一个XML文档一样,所以使用SimpleXML或类似的库就足够了。

下面是一个示例脚本执行服务器端的SVG创建:http://www.carto.net/svg/samples/serverside_svg_php.shtml

+0

您可以将SVG转换为eps或ai文件以供投递吗?或者大多数熟悉矢量的客户能够打开SVG吗? – Walker

+0

是的,你可以。如果您的服务器环境正在运行Linux(Windows也可以),您可以安装ImageMagick并转换文件。顺便说一句,不是EPS的光栅格式? – Blender

+0

@Blender不,EPS支持栅格和矢量图形。由于inkscape的栅格效果比矢量图形效果更好,因此您可能更喜欢[inkscape](http://inkscape.org/)。它主要是一个图形程序,但也可以[在命令行上使用](http://linux.die.net/man/1/inkscape)导出到EPS(以及其他格式)。 – phihag

2

的替代SVG:如果你的客户特别是Flash格式的通缉文件,Flash也有.xfl格式 - http://www.leebrimelow.com/?p=1986 - 这实质上是一种未压缩的FLA 。

它损害了一个文件夹与一些轻松创建的子文件夹,其中所有的形状/ movieclip等是基于XML。

只要他们有CS5(我有CS5,不知道它是否可用)或以上,他们将能够打开它没有问题。

创建一个新的fla并将其保存为.xfl以查看布局。