解析 Hershey 字体格式

发布于 2024-12-14 07:27:01 字数 587 浏览 1 评论 0原文

Hershey 是一种基于文本的矢量字体格式,定义如下:http://paulbourke.net /数据格式/好时/

结构基本上如下:每个字符由一个 第 0:4 列中的数字 1->4000(未全部使用),中的顶点数 第 5:7 列,左手位置 第 8 列,右手 第 9 列的位置,最后是单个字符的顶点 对。所有坐标均相对于“R”的 ascii 值给出。 如果坐标值为“R”,则表示提笔操作。

我不明白如何解析这种格式。例如,对于字符“3”:

3 11MXVNTMRMPNOPOSPURVTVVU

顶点数为 11。这 11 个顶点是多少?我会说:

MX VN TM R(pen up)  MP NO PO SP UR(a 'R' here?) VT VV U(last char missing?)

但这是错误的(最后一个坐标丢失)

Hershey is a text-based vectorial font format defined here: http://paulbourke.net/dataformats/hershey/

The structure is bascially as follows: each character consists of a
number 1->4000 (not all used) in column 0:4, the number of vertices in
columns 5:7, the left hand position in column 8, the right hand
position in column 9, and finally the vertices in single character
pairs. All coordinates are given relative to the ascii value of 'R'.
If the coordinate value is " R" that indicates a pen up operation.

I don't understand how to parse this format. For example for the character '3':

3 11MXVNTMRMPNOPOSPURVTVVU

the number of vertices is 11. What are those 11 vertices ? I would say:

MX VN TM R(pen up)  MP NO PO SP UR(a 'R' here?) VT VV U(last char missing?)

but it is wrong (last coordinate is missing)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

风流物 2024-12-21 07:27:01

你搞错了。 “R”不是“提笔”——“R”是“提笔”(空格 + R)。顶点是:

MX VN TM RM PN OP OS PU RV TV VU

“R”并不特殊,它只是坐标系的零,所以“RM”是[0; -5]。

You've got it wrong. "R" is not a "pen up" — " R" is "pen up" (space + R). The vertices are:

MX VN TM RM PN OP OS PU RV TV VU

"R" is not special, it's just the zero of the coordinate system, so "RM" is [0; -5].

北方。的韩爷 2024-12-21 07:27:01

是的 - 顶点的数量并不完全是顶点计数 - 而是要遵循的对数量的计数;包括初始的左/右和“R”移动标志。有关示例,请参阅 https://github.com/dirkx/HersheyEngravingFontsForCocoaAndiPhone 中的函数 parse:()path 。

Aye - and the number of vertices is not quite a vertices count - but a count of the number of pairs to follow; including the initial left/right and the ' R' move flag. See the function parse:()path in https://github.com/dirkx/HersheyEngravingFontsForCocoaAndiPhone for an example.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文