我一直在网上寻找解决方案,但我发现自己的技能范围内没有任何东西。您如何使用python或javascript将这些Hershey Font .jhf文件emergent.unpythonic.net/software/hershey转换为JSON。创建类似:

[
    {
        asciival:26,
        points:[[5,-5],[4,7,8],[6,8,7]]
    },
    {
        asciival:27,
        points:[[5,-3],[4,7,33],[6,32,7]]
    },
(…)
]


我知道有一个question here,但这不足以让我了解系统。

编辑1

我已经在注释中找到了paulbourke.net/dataformats/hershey/ sean的描述。


  例如,考虑第8个符号
  8 9MWOMOV RUMUV ROQUQ
  它有9个坐标对(包括左和右位置)。
  左边的位置是'M'-'R'= -5
  正确的位置是'W'-'R'= 5
  第一个坐标为“ OM” =(-3,-5)
  第二个坐标是“ OV” =(-3,4)
  抬起笔“ R”
  移至“ UM” =(3,-5)
  绘制到“ UV” =(3,4)
  抬起笔“ R”
  移至“ OQ” =(-3,-1)
  抽到“ UQ” =(3,-1)
  在一张纸上画出来会发现它代表一个“ H”。


我试图从中弄清楚,但这些价值观从何而来?
例如为什么是UM(3,-5)?

编辑2

我发现this java class

最佳答案

坐标是连续的字符对。要将它们转换为数字,请从每个字符中减去字符'R'= 82的ascii等效项。在您的示例中,“ UM”转换为(3,-5),因为U是ASCII码85。减去82(='R')得到3。M是ASCII码77,减去82得到-5。

10-08 15:04