字体修改详细图文教程

字体修改详细图文教程,第1张

去年十月份改论文时,用matplotlib做图,生成pdf,插入到word文档中。但是需要把整个字体都嵌入到pdf里,生成的文件很大。当时就想通过修改字体,删除不用的字来解决,这是当时看的一篇教程,讲的很详细。

目录

一、基础知识介绍

注意:770适应的TTF,必须为2左右的,不能超过2.5M的TTF,所以大家找模板的时候的注意。

首先说一点题外话,这份字体教程说了许久,一直没有拿出来,实在不好意思,在此向各位道歉。因为还没有写完,就已连载的形式慢慢发出来,前几部分为了照顾新手写得比较啰嗦,后面我会写的简洁一些。下面进入正文。

要学会修改字体,我们必须要对字体有一定的了解,我希望首先在这里很快把一些字体结构的基础知识都在这里解释一下,为了方便新手理解,我认为使用比较形象的比喻结合相关术语来说明比较好,由于我们主要使用FontCreator来修改字体,下文中的术语将以FontCreator为准。升旦

首先,让我们把每个字体想象成一座大厦,这座大厦有他的名字等信息,我们可以通过这些信息来找到这个字体。而我们所需要显示在屏幕上的每个字符相当于就是住在这座大厦每个房间的人,这吵森扰就是我们修改的主要目标了。这时你也春神许会想到:一个字体拥有几万个房间,我们怎么知道要找的人在哪个房间呢?

就我们接触最多的TrueType(.ttf)字体来说,它使用的的是Unicode编码,它为每种语言中的每个字符设定了统一而且唯一的二进制编码,也就是说我们大厦中的每一个房间都有一个统一而且唯一的二进制的房间号码,另外,我们还要同时保证,该房间号码所对应的人必须是正确的,否则我们找到的人就不是我们想要找的人,显示出来的字符也就不是我们想要显示的字符。“统一而且唯一”的意思就是无论哪个系统都是按照这个编码去寻找字符,并且每一个编码只可能出现一次。

这下大家应该比较清楚了吧,我们要让一个字体正常并且正确的显示,首先要保证字体结构是完整正确的,其次我们还有每个字符以及同他相对应的编码是正确的。当然这只是最基本的条件,实际上具体的情况可能复杂很多。

下图是一个完整的Unicode编码表,我们所能用到的99.9%的字符都属于其中的BMP(基本多文种平面 Basic Multilingual Plane),也就是0000-FFFF之中。

二、常用软件介绍

High-Logic FontCreator Professional Edition:这应该是用的比较多的一款字体创建、修改软件,虽说不够专业,但是足够我们日常使用了。目前最新版本5.6,有汉化版,不过推荐使用英文版。

High-Logic MainType:与FontCreator是同一家公司的产品,很好用的字体管理软件,而且可以辅助我们更方便地修改字体,用到时我再详细介绍。目前最新版本2.1.1。

FontForge :Linux上的一款开源字体编辑软件,据说功能和专业的FontLab相媲美,虽然在Windows也可以运行,但是 *** 作习惯有些不同,也不太稳定。但是在某些功能上比FontCreator方便很多,所以我将它配合FontCreator一起使用。

Unicode编码转换工具:可以将您输入的字符转换为Unicode编码,这样你就可以快速定位该字符进行修改。有两款,其中一款支持双向转换。

字体组件:这是我从各个字体中搜刮出来的,按照相应的顺序及语种或类别放在了单独的字体文件中,包含了BMP范围内我所能找到的所以字形

11月26日更新了一下,因为查了些资料,发现有几个地方是不应存在任何符号的,另外对中文部分对照GB18030做了一些修改。如果你是用了该文件修改字体并公开发布的话,希望能署上本人名字或留下我的博客地址,谢谢。

字体编辑FontCreator5.6XX版本(以前我上传的,定位到这个帖子里)

2篇修改字体教程!喜欢DIY的看看:

http://www.motoedy.cn/viewthread.php?tid=164

http://www.motoedy.cn/viewthread...pextra=&page=1

三、替换字体的英文字母及数字

接下来我们就正式开始字体的修改,我将采用实例的形式编写本教程,首先我们从最简单的替换数字及字母开始,我们以制作准圆NeoSans为例。其实这部分很简单,就是复制粘贴而已,只需要注意一点,就是每个字形要复制到对应的编码下,要不然就会出现显示错误。通俗的说,就是要把新的字形放对房间。

技巧

我建议每次修改字体之前,都确保字体中的字符是按Unicode编码(也就是文章开头所说的房间号)的顺序排列,这样一方面方便修改,另一方面可以大大减少修改中出现错误。在本例中,如果原字体与替换所用的字体排列顺序不一致的话,直接复制粘贴就会出现错误。具体 *** 作方法为选择菜单栏Font - Sort Glyphs,然后选择第一项,点击OK,这个过程需要比较长的时间。

四、少量连续符号或文字的添加

今天将介绍少量连续符号或文字的添加,该 *** 作使用FontCreator比较方便,下面我以给方正准圆添加Nokia特殊符号为例,说明 *** 作方法。

实际上,你可以利用以下方法,将教程(2)提供的Components.zip中的任意一个字体组件添加到您的字体中。我修改的字体基本上都是不带韩文的,如果你需要显示韩文的话,通过以下方法就可以实现了。

首先打开Nokia符号组件及准圆字体,全选所有字符(Ctrl+A),可以看到状态栏上显示总共有19个字符,同时记住这19个字符的编码是从F800至F812。然后使用Ctrl+C复制这些字符(也可以使用右键菜单或工具栏按钮)。

五、大量非连续符号或文字的添加

在本教程第二部分提供的字体组件中,有一个Components.ttf,这个字体文件包含了除中文和韩文以外其余的所有一万一千余个符号及文字,方便大家进行一次性添加,由于原字体与Components.ttf必定会有一部分重叠,我们所需要补充的字形肯定不是连在一起的。

另外,如果你要修改的字体中文部分不完整的话,为了能显示所有中文,你有可能需要使用相似的字体将中文部分补充完整,这时你需要补充的中文字符肯定也不是连续在一起的。

在以上两种情况中,我们就不能按照教程第四部分简单的进行添加了,这一部分我们就以利用Components.ttf补充准圆的符号文字为例,分别说明使用FontCreator及FontForge的 *** 作方法。

1. 使用FontCreator进行添加

首先我们打开两个字体,将Components.ttf中的字形全选,复制。

接着,我们在准圆字体末尾添加11411个空字形,注意下面选择第二项“After last glyph”(没有选中字形的话默认为该项)。

2. 使用FontForge进行添加

首先,同样打开两个字体,路径为“cygdrive\盘符\目录\文件”。

接着分别在两个字体的窗口中选择菜单Element – Font Info,d出窗口的左边选择General,将Components.ttf的Em Size(主要是这项)、Ascent、Descent改为与准圆相同的数值,点击OK,稍等片刻等待该 *** 作完成。

六、删除不需要的字形

说完了怎么添加字形,现在该说说说说怎么删除字形了,在这里我们利用MainType,可以很方便的删除不需要的字形,对字体进行精简。

首先打开MainType,界面中间的左部是字体列表区域,第一个选项卡Actives代表已安装的字体,每次启动时都会加载该列表下的字体,稍等一会加载完以后,点击Browse选项卡,浏览到你要修改的字体目录,选择你要修改的字体,这时你在右边就可以看到该字体所包含的所有字形,并且是按照不同的区块排列的。通过 这个文本文件 ,你可以查看到区块对应的用途或语言。

七、字形轮廓的调整

今天继续为大家带来我的字体修改教程,这次我们讲的是比较重要的一部分,修改字体的过程中也会经常用到的–对字形轮廓的具体调整,同时也包含对单个字形宽度等参数的调整。

我们打开一个字形,这里一英文大写字母“K”为例。中间黑色实心的部分就是屏幕上显示出来的字形,它的附近有几根红色的虚线来定义它的位置。水平的几根同一个字体内的每个字形都是一样的,而垂直的两根定义了该字形的宽度,同一个字体里的不同字形不一定相同。关于这些虚线的意思和作用大家可以看看下图中标注的中文。

实例

怎么使用好这个工具还需要你自己不断地摸索,我觉得很难用语言表达清楚,最后我举一个小例子,希望能起到抛砖引玉的作用,下面我说一下怎样对桌面播放时间不能完整显示的字体进行调整。

桌面播放时间用到的是数字及英文冒号,经过多次的测试得到,在数字宽度为字体Em Size的一半,冒号宽度为Em Size的四分之一时,能保证桌面播放时间的完整显示。字体的Em Size可以通过Format - Setting,在Units per em后面看到;单个字形的宽度可以右键单击该字形,选择Properties,在Advance Width后看到。

1,用字体替换工具(搜一下 大把)将xp里拷来的simsun.ttf 替换掉win7里的同文件名文件

2,删除游颤尘or替换掉win7下的simsunb.ttf文件,替换的话用刚才xp的simsun.ttf就行洞野。

3,调整系统设置里文字的字体(控制面板》个性化设置》Window Color and Appearance》高级,把里面项目中使用segoe ui 的全改成tahoma)

4,修改注册表中

[HKEY_CURRENT_USER\Control Panel\Desktop]

"FontSmoothingType"的数值到1,即为:"FontSmoothingType"=dword:00000001

为的是取消desktop里的ClearType效果

5,修改注册表中

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes]

"Microsoft YaHei"="Tahoma"

"Microsoft YaHei Bold"="Tahoma Bold"

一般来说这两条是不存在的 自己加上去吧,功能是字体替代,把雅黑变成tahoma。

通过以上方法,字体已经看着很清晰了,猛一看全系统也很爽。但,运行有些中文软件时,你会发现中间的雅黑因为少了ClearType效果而显得很恶心甚至看不清,那接下来,再来一步。。。

6,在注册表中找到 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts]

把里面的雅黑"Microsoft YaHei" 对应的文件更改掉,这样系统就会因为找不到雅黑字神禅体而被迫选择tahoma。

简单6步,可以完美搞掂字体模糊。

————————

如果觉得改后不爽,也可以恢复到原有状态:

1,打开“控制面板”,找到“外观和个性化”,点击进入。在“字体”菜单中,找到“更改字体设置”。单击进入Win7的字体设置界面

2,在该界面的“字体设置”中,有一个“恢复默认字体”的按钮,左键单击,此时按钮变灰。此时所有的字体已经恢复到了Win7的默认新版雅黑。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12484526.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存