我需要将任意文本转换成一组矢量坐标,如HPGL(HP图形语言)中定义的,以便能够用激光打印,如果可能的话,使用C/C++。
我可以使用任何字体,使这项任务更容易。
我已经找到了将字形轮廓转换为SVG的方法,但是我不知道如何处理SVG以获得最终的HPGL坐标。我不确定是否需要遍历SVG,它看起来太复杂了,无法最终得到简单的HPGL向量。
最佳答案
它不是C/C++,但我使用了一个简单的Perl脚本,称为pstoedit(你可以下载它的源代码),然后修改结果,把数据发送到HPGL绘图仪。
基本上是这样的:
使用inkscape我画了一张图片,然后保存为EPS(postscript)。
我使用pstoedit将生成的EPS转换为HPGL。
然后,perl脚本稍微修改了生成的HPGL(主要是删除除我需要的命令之外的任何命令并设置速度)
perl脚本的结果被输入到绘图仪
我不得不这样做,因为从inkscape的HPGL不适合我的绘图仪。如果我必须再做一次,我可能会尝试一下。它是inkscape的一个插件,似乎可以生成适合切割器的HPGL。
由于inkscape可以读取SVG文件,然后生成HPGL文件,因此您似乎可以使用它。
关于c++ - 将文本转换为HPGL(绘图仪) vector 坐标,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9876231/