SolidZORO / zpix-pixel-font

Zpix (最像素) is a pixel font (中文像素字体), supporting English, Chinese (Simplified + Traditional) and Japanese.
https://zpix.vercel.app/
2.41k stars 67 forks source link

你好,请问非商业使用的情况下,进行了转换与修改是否允许 #37

Closed gledos closed 3 years ago

gledos commented 3 years ago

具体仓库: https://github.com/gledos/pixel_font_cavans

我使用了 victorporof/BDF.js 这个脚本进行转换 Zpix.bdf ,使字体变成了 js 的对象,像下面的片段。

var 字体 = {
    '的':[
        [ , , , , , , , , , , , ,],
        [ , , ,1, , , ,1, , , , ,],
        [ , ,1, , , , ,1, , , , ,],
        [1,1,1,1,1, , ,1,1,1,1,1,],
        [1, , , ,1, ,1, , , , ,1,],
        [1, , , ,1, ,1, , , , ,1,],
        [1, , , ,1, , ,1, , , ,1,],
        [1,1,1,1,1, , , ,1, , ,1,],
        [1, , , ,1, , , ,1, , ,1,],
        [1, , , ,1, , , , , , ,1,],
        [1, , , ,1, , , , , , ,1,],
        [1,1,1,1,1, , , , ,1,1,1,]
    ],
};

不过 BDF.js 这个解析会使一些字符顶部对齐,所以我修改了 Zpix.bdf ,仅在部分字符的头部增加了数行表示空白的 00 ,使字符居中。

所以我对字体的 bdf 文件转换与修改能否被允许呢,如果只是修改不被允许,那么我可以通过对 BDF.js 添加代码,让解析/转换直接输出居中的字符。

谢谢。

SolidZORO commented 3 years ago

如果有可能,你可以告诉我要怎么改才能符合你的预期?或者提个 PR?如果没有办法提 PR,那非商用你改吧没有问题。

gledos commented 3 years ago

我修改字体,手动增加空白行的原因是我不太了解 BDF 格式的居中原理,修改 victorporof/BDF.js 对我来说太复杂了,所以我修改的字体应该仅仅兼容我写的程序。

这是原始的字符

STARTCHAR U+002B
ENCODING 43
SWIDTH 259 0
DWIDTH 7 0
BBX 5 5 0 1
BITMAP
20
20
F8
20
20
ENDCHAR

圖片

生成出来的效果是这样的,所以我会修改成下面的样子

STARTCHAR U+002B
ENCODING 43
SWIDTH 259 0
DWIDTH 7 0
BBX 5 8 0 1
BITMAP
00
00
00
20
20
F8
20
20
ENDCHAR

圖片

SolidZORO commented 3 years ago

明白了,感觉可能 bdf.js 无法用到 bdf 文件里面的 offset 数据。