使用python或javascript将Hershey字体.jhf解析为json

时间:2012-12-26 14:11:22

标签: javascript python json parsing fonts

我一直在网上寻找解决方案,但我发现我的技能没有任何内容。你会如何使用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但这还不足以让我理解这个系统。

EDIT1

我已经在评论中指出了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)?

EDIT2

我找到了this java class

1 个答案:

答案 0 :(得分:1)

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