gbcbig.shx字体python解析,以及转为fnx字体,UG字体修改
这个聚聚很懒
2025年07月12日 20:25

最近不知道为什么有点强迫症!

非要把shx字体转成fnx字体给UG使用(其实UG的字体比gbcbig.shx细节更多更漂亮)。

最近解决了一部分,强迫症解除了,记录一下。

方法如下:

一、shx字体解析

shx字体可以通过shx2shp转换为shp格式的字体文件,shp字体文件为文本文件,打开:

*号后面代表了字符,7,142,5,2,8,(42,79),1,8,(-5,1)这些括号里面的是相对坐标,本以为1是落笔,2是抬笔,结果试了好几次,不对!!!发现2是落笔,1是抬笔。

那么所有的字符和落笔抬笔的坐标全都有了,这个字形的信息足够了,shx字体解析可以搞定了。

二、UG fnx字体解析

UG的fnx字体可以由fnt字体编译,fnt字体是文本文件,打开MD是开始划线的坐标LD是连线的下一点的坐标。用的是绝对坐标。那么由此知道了UG的字体构成,可以生成UG字体了。网上能搜索到更详细的信息。

三、转换

这部分用python比较方便,读取shp文件转换成fnt文件就好了,然后编译成fnt就可以给UG用了。

转换用的渣渣代码:

附一份在UG中的显示状态,其中不少字是自己改过的:

当然了UG的字体也能转出来shx给CAD用,

至此CATIA UG CAD的字体可以互转了!强迫症解除了啦啦

以上仅是测试验证想法接触强迫症,写点小脚本挺有意思的就是了,其实也并不会在实际中使用。