Font Name – CJK Type Blog http://ccjktype.fonts.adobe.com/ CJK Fonts, Character Sets & Encodings. Fri, 10 Sep 2010 11:42:02 +0000 en-US hourly 1 https://wordpress.org/?v=5.4.4 字体名称的那些事儿(三):字库名称的设置 https://ccjktype.fonts.adobe.com/2010/09/fontname3-h.html Fri, 10 Sep 2010 11:42:02 +0000 http://blogs.adobe.com/CCJKType/?p=287 Continue reading ]]>        前文介绍了字库名称的重要性,如何真正命名字库,还需要字库开发者在制作字库时仔细按照OpenType specification的说明设置name table,每个参数设置的正确与否直接关系到字库是否能正确工作于各个平台。概括来说,name table主要包含的信息有:用于不同平台不同语言的字体家族名称、字体风格、PostScript 名字、字体版本、版权信息以及自定义的样本文字等等,可以说在该表中定义了字库的“身份”信息,是非常重要的一个表。

       name table的结构并不复杂, 它由五个基本元素组成:platform ID, character encoding ID, language ID ,name ID和string。platform ID是指支持的操作系统,它共有五种设置,其中Macintosh(platform ID =1)和Windows(platform ID =3)是必须支持的两个平台。character encoding ID 是指所支持的字符编码,它的设置这决定了string字符串的编码形式。language ID 是指平台语言,它决定了用什么样的语言表述string字符串,总体来说无论是哪种语言的字库,英文信息是必须的,除此以外,还需要根据字库语言的不同增设本地化的信息。name ID是指string字符串的含义,不同的ID代表不同的含义,比如name ID=0,表示string字符串设置的是版权(Copyright)信息;name ID=1,表示string字符串设置的是家族字体名称信息。最后的string字符串就是实际的设置了,它的用途和编码取决于前面四个元素的设置。

       name table 中的各个元素互相关联,本身结构并不复杂,但是容易出错,为此 Ken Lunde 专门撰写了Tech Note #5149 OTF Name Tutorial 以帮助字库开发者更好地设置name table。

       文中提到以下几块内容:

       一、OTF CFF字库中PostScript Name的设置
       二、Platform,Script & Language IDs的设置
       三、Copyright 版权标志“©”的设置
       四、Microsoft/Unicode 菜单中字体名称的设置
       五、Microsoft/Unicode PostScript Name的设置
       六、Macintosh 菜单中的字体名称的设置
       七、Macintosh PostScript Name的设置
       八、UniquelID 字符串的设置
       九、Version 版本信息的设置
       十、其它字符串的设置
       最后还提到如何用AFDKO包装字库时,正确设置name table的参数。想信该技术文档对字体开发者会有所帮助。

]]>
字体名称的那些事儿(二):读懂指示符的含义 https://ccjktype.fonts.adobe.com/2010/07/fontname.html https://ccjktype.fonts.adobe.com/2010/07/fontname.html#comments Fri, 23 Jul 2010 10:12:00 +0000 http://blogs.adobe.com/ccjktype/?p=171   
  字体可以根据实际需求制作成不同的字库,比较常见的是将某种字体制作成符合不同字符集标准的字库,使用不同的字符集标准也就意味着其字符数目和字型的不同,这类按不同字符集制作字库的方式可以看做是一种横向的扩展。而纵向的扩展是指在某种基础字库之上进行字体功能上的扩展,其字符数目的增加是出于功能上的考虑,比如连笔、分数、异体字替换等等。对于这些字库的衍生或扩展,很多厂商通过在字体名称中增加标识来加以区别。

  对于横向扩展的字库,很多厂商愿意使用相应字符集标准的缩写,比如18030、B5、GB、GBK、JIS,这样的指示符清楚、易懂。Windows 系统中的SimSun和SimSun-18030就是一个很好的例子,这里的18030是指GB18030-2000标准,也就是说该字库基于GB180300标准,包含两万多汉字。

  对于纵向扩展的字库,特别是OTF字库,常见的标识是是Std、Plus、Pro。Adobe使用的就是这套标识。如果字库仅包含字符集标准中规定的字形,就采用Std标识,即Standard的缩写。如果字库包含大量字符集标准以外的字形,而这些增加的字形是用于特殊的用途,比如连笔、分数、异体字替换等,就采用Pro标识,即Profession的缩写,这类字库主要是为了满足专业出版社的需求。

  基于Std、Plus、Pro我们还命名了一些衍生标识,例如Pr6,Pr6N、PlusN。以Adobe日文字库为例解读一下这类标识。“Std/Plus”表示字汇基于Adobe-Japan1-3(9,354 CIDs),“StdN/PlusN”则在“Std/Plus”基础上增加了144个字形并兼容JIS2004标准。“Pro”的字汇基于Adobe-Japan1-4(15,444 CIDs),相比“Std”增加了很多专业的OTF特性及字形。“Pr6”则是在“Pro”的基础上的再扩充,所包含的字汇和Adobe-Japan1-6(23,058 CIDs)一致,其“6″表示的是该字符增补集名称中的标号。日本政府于2004年对JIS X 0213进行了修订,增加了十个汉字并更改了168个字符的字形,针对该修订我们也相应地制作了Pr6N字库,最后字母“N”即表示兼容JIS2004标准,目前Adobe CS5捆绑的日文字库都是PlusN和Pr6N的字库。
  
  总之,建议设置通用或易懂的标识,这样有有助于用户读懂字体名称中的指示符,进而选择合适的字库。

FYI:Adobe-Japan1-6文字コレクションに対応する日本語OpenType®フォントについて

]]>
https://ccjktype.fonts.adobe.com/2010/07/fontname.html/feed 3
字体名称的那些事儿(一):好名字是好的开始 https://ccjktype.fonts.adobe.com/2010/06/post_3.html Wed, 30 Jun 2010 17:19:28 +0000 http://blogs.adobe.com/ccjktype/2010/06/post_3.html Continue reading ]]>   
  一直想就字体名称写点什么,因为在多年的实践中,深感到字体名称的命名、设置在实际使用中非常重要。名字虽然不是字库的”灵魂”,但的确在某方面决定了”成败”。

吹响庆祝的号角,一个新的字体诞生了!
  一款凝聚着许多人心血的新字体终于面世了,第一件大事自然是要起个好名字,当然不能象起”小名”般随意,因为这名字将要登记在册,写入”家谱”,未来要登上Windows 、Mac OS X这样的平台,出入各式各样的App(Application)。那么什么样的名字才是好名字呢?

  按照OpenType字库格式所述,字库名称由两部分组成,即家族字体名称 & 子家族字体名称。以Adobe 的日文字库”小塚明朝 Pr6N R”为例, “小塚明朝 Pr6N” 即为家族字体名称,而 “R “(Regular)是子家族字体名称,它通常表示的是该字库的粗细和风格(是否是斜体)。 “小塚明朝Pr6N” 家族字体共包含六种不同粗细的字库(从Exta Light 到Heavy),这六个独立的字库文件使用同一个家族名称,仅在子家族名称上加以区别,通常这类家族字体除了笔划粗细不同外,其间架结构、笔型、整体风格都完全相同。
随着系统中的字库越装越多,字体菜单也变得越来越长,所以很多专业排版软件将字体菜单切分成二级菜单,一级菜单显示家族字体名称,二级菜单显示子家族字体名称,有效地缩短了菜单长度,便于用户查找所需字体。

对于家族字体名称的命名,有以下四条建议:
1、确保字体名称的唯一性
对于字库而言,碰巧与其它字库同名是件很糟糕的事,因为系统平台对字库的安装原则是”先来先得”,同名字库是无法同时安装在一个平台上的,所以起名时一定要有”个性”。为了避免该问题,很多字体名称都会加上具有唯一性的标识,比如厂商的名称或者设计师的名号等等。
2、名称中的字符不要超出字库本身所覆盖的字符集范围
很多软件的字体菜单不仅显示字体名称,还同时显示相应的字体样式,如果某字体名称中的字符不在其字符集范围之内,系统就会使用某个系统字体替代,最糟糕的状态是显示方块,为用户选择字体带来没有必要的麻烦。
3、如果是非西文字库,要设置英文字体名称
如果是非西文字库,除了要设置相应语言的名字外,还需要设置英文字体名称,以保证字库可以多语言平台使用。
4、名字不宜太长
原因很简单,便于称呼和显示 :-)

  子家族字体名称是用来表明该字体的粗细和风格(主指是否是斜体),当字体是普通粗细并且是非斜体时,可以使用”Regular” 作为子家族字体名称。按笔划粗细命名的子家族字体名称有(由细到粗排序):
Ultra Light ,Extra Light ,Light,Semi Light(Demi Light) ,Regular,Medium,Semi Bold(Demi Bold),Bold,Extra Bold,Ultra Bold,Heavy(Black)。

  很多时候从字体名称就能判别出字体风格,比如”小塚明朝”, 一看便知是明朝体,”小塚”是该字体设计师 小塚昌彦 的姓,而有的字体名称具有一些特殊含义,比如かづらき(Kazuraki) 来源于藤原定家的《拾遺愚草》中的一句诗,著名的Helvetica演变自瑞士的拉丁名”Helvetia”。相信每个字体名称后面都有一段有趣的故事。

  总之,字库一旦发布,在未来的升级中不能随意修改字体名称,因为字体名称的更改会导致旧文档兼容性问题,所以让我们从一开始就慎重地为新字体起一个好名字吧!

下一篇我会介绍字体名称中的Std、Pro、Pr6N 特殊指示符的含义。
后记:之所以标题套用了**那些事儿,是希望自己能把技术文章写得有趣些,但写到后面发现自己还是摆脱不了写技术文档的模式,阅者见谅吧。

]]>