电子书外挂生僻字教程 #3

生僻字的分类

我们知道中亚的电子书特别喜欢做生僻字的图片补丁,在分析归类之后,从易到难可以分为下面几类:

  1. 字符属于GBK区,只是看起来陌生,例如觺这个字(u89FA),中亚照样是做了图片的,可能kindle的字库连GBK都没有达到;
  2. 字符属于扩充A区。之前我说过了,安卓的系统字体是18030-2000的,也就是说支持GBK+A,只不过多看内置的字体只有GBK,那么这些字符就会以系统字体的黑体显示(如果你换了系统字体,那就可能不显示或者显示别的字体)。
  3. 字符属于扩充B区。其实这种情况也还算方便,毕竟支持扩充B区的超大字符集很多,可以方便的借用整个字符过来,
  4. 字符属于扩充C—F区。这种情况,只有宋体的两个超大字符集可以用(花园体也是宋体的),对于楷体而言,就得拼部首造字了;
  5. 字符属于手写字或者图片字,反正不是国标确定的码区,这种情况就得多一个步骤,除了造字,还需要分配一个自定义码位给你的新字。

输入字符

在造字成功之后,就要输入这个字符到sigil中了。
以前大家可能听过windows中按住alt键输入内码松开alt键输出文字的方法,但是内码和unicode之间还是要进行转换的,比较麻烦。之前我走了点弯路,找了个网页进行unicode到字符的转换,其实还有个更简单的办法,就是利用html实体。
sigil对html实体支持良好,而且保存文件时,它会自动将实体代码转换为字符。举个例子,要输入觺这个字,只需在html中输入觺即可,保存时会自动转换为觺。如下图:

输入代码

保存后自动转换为字符

扩充AB区造字

第一种情况,直接将图片字替换一下就可以了,这里就不多说了。扩充AB区的字符可以直接借用,步骤如下:
启动fontstudio,打开rsong.ttf(这是拿多看的方正书宋_GBK.ttf改的,去掉了大部分GBK的汉字以减小体积)

打开方正书宋

现在我要借用大字符集中的𠂤字(通过汉字宝典搜索到u200A4),打开方正超大字符集,按ctrl+f打开搜索界面,左边选择Unicode index,右边填写200A4,回车就可以跳转到𠂤字符处。
按码表搜索

此时已经选中𠂤字符,底色是蓝色,按下ctrl+c
复制字符

将rsong.ttf的界面调出来,不要选中任何字符,拉到最下面,按下ctrl+v即可粘贴刚才的𠂤字符
粘贴字符

这样就完成了字符的借用,对比书宋现有的字符,这个字符显得字重太小,笔画太细了,需要进行修饰。双击该字符就可以打开字形(Glyph)修改界面,如下图:
字形修改

这里的字形实质上是个矢量图,与PS中钢笔工具的使用差不多,简单介绍一下:
不同点位的意义

我们可以看到,字形矢量是由不同的点和线构成的,上图放大了可以看到方形的点是连接线条的“锚点”,十字型的点则是调整线条曲率的“辅点”。鼠标选中一条线段(或者锚点)之后,可以拖动,或者用方向键像素级微调位置,从而调整了笔画的粗细,选中辅点拖动,就可以调整对应线段的曲率。

  • 如果一条直线,想将其弯曲怎么办?按住alt键选中线段拖动即可。
  • 按住shift键可以多选点或者线,可以框选,框选会切换选中的状态。
  • 双击一条线段,会自动选中该线段所在的封闭区域。
  • 锚点选中为蓝色,黄色说明有多个锚点重合。选中后按delete键就可以删除点或者线,但它不会“断开”,而是继续保持封闭区域。
  • 如果想将两个区域合并或者分割,要使用左上角的工具栏。


    工具栏

    工具栏从左向右简单介绍一下:

  1. 选择工具,一般在此状态下进行编辑。
  2. 橡皮擦,擦除字形的点和线,用得很少,因为选择时按delete更精确。
  3. 小刀,可以在线上创建锚点,在锚点上切开,切开后会显示×图标,线头会分割开,用于和别的笔画拼合。如果存在未闭合的锚点或线段,生成字体时会警告。


    小刀
  4. 测量模式,进入后不会对字形做修改,鼠标按住拖动会显示像素值,用来测量笔画粗细。
  5. 绘制孤立锚点,再次点击会删除这个点,与PS钢笔工具类似。
  6. 绘制直角锚点,继续在别的地方点击形成直角线段。
  7. 绘制圆角锚点,继续在别的地方点击形成曲线线段。
  8. 绘制切线锚点(没看出来有什么作用)。
  9. 绘制一个矩形,4个锚点。
  10. 绘制一个圆形,4个锚点。
  11. 旋转所选部分。
  12. 缩放所选部分,在拼部首时很有用。
  13. 斜切所选部分。
  14. 自由变换(与PS中差不多)
    后面两个我们暂时用不着。现在我们选中线段进行加粗即可,最终效果如下:


    加粗之后

    关闭后,file-generate font即可生成新的字体,按照前一帖子将新字体加入sigil后,再按上面的方法输入html实体,即可正常显示AB区的字体。

扩充C—F区造字

这种情况的造字稍微麻烦一点,同样从开心宋体等大字符字体借用字符和码位之后,如果你要造楷体字,那字形就得重新设计,例如造[南殳]字(u2C1A9),同样搜索到开心宋体的对应字符,复制到楷体字中,如图:


复制字符

双击后将其清空,然后从楷体字中搜索“献”和“殷”来拼部首就行了,根据上面所说的工具,可以略微调整部首宽度,最后效果如下:


拼出来的字

之后的步骤都是一样的。

生造字

这种情况的造字又要多一个步骤,也就是确定一个编码区来放你的生造字,例如从F0000开始放生造字,那么从开心宋体复制了对应字符后,先清空字形,然后右键点击该字符:


右键点击

在弹出的重命名对话框中,将下面unicode改为F0000,上面的name也必须要改为uF0000,否则调用可能出问题。只要点击一下name最右边的钻石按钮就会自动更改了,别的选项不用改动:


重命名

接下来的步骤与上面的是一样的。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 226,913评论 6 527
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 97,710评论 3 412
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 174,561评论 0 373
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 62,278评论 1 306
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 71,080评论 6 405
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 54,604评论 1 320
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 42,698评论 3 434
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 41,847评论 0 285
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 48,361评论 1 329
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 40,330评论 3 353
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 42,487评论 1 365
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 38,044评论 5 355
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 43,738评论 3 342
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 34,134评论 0 25
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 35,378评论 1 281
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 51,053评论 3 385
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 47,471评论 2 370

推荐阅读更多精彩内容

  • 中文字符编码区域 上一节举了一个相对简单的例子,主要是解决多看中中西文混搭的显示问题,本节着重讲一下中文古籍生僻字...
    hyx108阅读 1,630评论 0 3
  • 概述 关于电子书的字体选择,其实是一个很庞大的命题,讲深了涉及字体设计,这里不扯那么远,主要是从电子书观感的角度来...
    hyx108阅读 10,024评论 10 9
  • 概述 之前我写过一篇关于电子书生僻字处理的帖子参见这里,其中讲了最为高大上的外挂字库方法。这段时间有很多同好询问制...
    hyx108阅读 2,919评论 1 4
  • 介绍 :一行代码搞定自动布局!支持Cell和Tableview高度自适应,Label和ScrollView内容自适...
    我不相信me阅读 6,748评论 3 5
  • 1、后悔自己年轻时不努力学习,到老了一无所成,少状不努力,老大徒伤悲。 2、后悔自己年轻时选错了职业。 3、后悔对...
    周荣_b3b8阅读 2,944评论 0 0