如何从头开始创建字符编码

问题描述 投票:0回答:2

我想知道是否可以从头开始创建一个像 ASCII 这样的字符集!

所以,我尝试这样做,但我发现的唯一的东西是允许我更改现有字符集的现有字符的软件,再次像 ASCII..

我真正想做的是确定哪个代码(二进制/八进制/十进制/十六进制)对应于特定字符(我将自己创建)。我的问题是,我不想拥有像 ASCII 的 128 个字符或任何其他现有字符集那样有限的字典大小。那么,你知道我有什么办法可以做到这一点吗?有什么软件吗?我想要实现的结果是有一个普通的ttf文件(即myfont.ttf),安装它,然后在记事本等软件中使用我的新字符集!

词典必须是我想要的大小,这非常重要..不要超过我需要的大小.. 当然,我可以更改 UTF-8 字符集的一些字符,但是这样我就会得到不需要的字符..并且因为我希望用它来测试压缩系统,所以字典的大小必须准确。

我需要的需求示例:

Binary code      Character      OCT      DEC      HEX
00000000         X              000      00       00
00000001         Y              001      01       01
00000010         A              002      02       02

...然后继续直到达到任何限制..可能是 150 个字符、500 个、17 个!

我认为这很容易理解..你知道我该怎么做吗?

dictionary fonts character-encoding binary compression
2个回答
1
投票

字符集定义了从字形到二进制代码的映射。据我了解,您可能不想创建新的字符集(除非出于教育原因,否则我不建议这样做,因为已经有无数的字符集和相关问题)。 你可能想采取例如。 UTF-8 字符集并用您自己的字符集替换一些您不会使用的字形。 (我想你必须在网上查找字体设计软件。) 由于字形数量的限制,UTF-8 的字形数量实际上相当高,但确实有一个。您可以采用与某些 dingbats 字体类似的方法,并为易于键入的字符放置字形。说 a => 土豆,b => 番茄酱,等等...然后在记事本(或选择的其他文本处理器)中,当他们想要输入特殊字形时,可以切换到您的字体,例如键入。 a、回到主字体继续书写。


-1
投票

我也在寻找一个可以根据二进制代码重写字符的软件,但我担心这种软件一定早已在软盘上丢失了。

您可能可以向微软或相应的大公司施加压力,以便提出一些有关方式的建议,但我确实相信他们也在使用预制程序,而不知道主代码。

让我解释一下您的问题的问题之一: 让我们假设您从 2 个字符开始,并且希望将字符限制扩展到任意数量:3。当前的 2 个字符将适合一位:一个字符为零,另一个字符为 1。让我们尝试扩展到 3。您能做的最有效的事情就是在现有的基础上再添加一点。这意味着您只能将角色的可能性扩展到 4 个角色,因为您只需向所有可能的结果添加一位即可。没有其他方法,因为添加一个位是扩展字符可能性的最有效方法,并且添加一个位总是会导致可能性加倍,即使您尝试仅添加一个新字符。这很重要,因为幕后的解释器必须知道字符代码由多少位组成。每次的长度都必须相同。

这实际上使得字典大小受到限制。如果你想制作一本 500 个字符的字典,那么它总是会导致拥有 12 个未使用的字符可能性。

让我们假设您拥有一个可以根据二进制代码重写字符的软件,那么您可能能够为由任意数量的字符组成的字典提出一个时髦的解决方案:所以在您尝试过之后将角色数量从2个增加到3个,你现在能做的就是使用多余的角色可能性作为角色组合。您只需选择一个常见的组合即可。例如 00 = A、01 = B、10 = C、11 = CA。因此,每当您有多余的字符可能性时,您只需使用它来对其他字符的组合进行编码即可。这样您就可以使用多余的字符代码。然而,据我所知,不存在这样的事情,甚至可能不可能做到,我不确定。

© www.soinside.com 2019 - 2024. All rights reserved.