2011-11-28 17 views
3

在PHP中,使用GD很容易将文本绘制到栅格画布in a certain font(根据服务器上保存的TTF文件),并将其输出为PNG或JPEG格式。是否有一个用于将文本绘制为矢量轮廓的PHP库?

我想要做大致相同的事情,但绘制文本作为矢量轮廓其输出作为一个SVG

(我不想嵌入字体本身所产生的SVG,因为字体是不是行货了点。)

是否有任何PHP库,提供这种功能?

+0

为什么你想摧毁svg中的文字?只有解决授权问题?你有没有考虑使用类似的,但免费提供的网页与生成的SVG输出? 通过将文本转换为svg路径,观众失去了搜索和选择文本的全部能力。 –

+0

是的,许可问题。字体是必不可少的(品牌指南)。我不需要SVG本身是可搜索的。我将使用SVG进行图像替换技术,即仅在视觉上隐藏文本并将SVG作为CSS背景(在支持它的浏览器中)显示。使用SVG(而不是PNG)的要点是有一个可缩放的界面,不会损失质量(如果支持)。 – callum

回答

3

脚本inkscape可以执行此操作。

以下命令将打开“example.svg”并选择文件中的所有形状并将它们转换为路径,然后保存并关闭该文件。

inkscape --verb EditSelectAll --verb ObjectToPath --verb FileSave --verb FileClose example.svg 
+0

太棒了。你在哪里找到这个API?是否可以打开一个不同的文件类型(例如,'.ai)并导出为'.svg'? – corysimmons

+1

这应该是可能的。在手册中找到,例如http://inkscape.org/doc/inkscape-man.html和http://tavmjong.free.fr/INKSCAPE/MANUAL/html/CommandLine.html。 –

0

我能够通过搜索找到CleverSVG,但是我没有自己尝试,我不确定它是否能够在不转发字体的情况下绘制文本。