横排和直排的中文字体
今天想起比较一下 jfm 横排和竖排的区别,文件目录在: /usr/local/texlive/2019/texmf-dist/fonts/source/uptex-fonts/
,中日韩分别有不同内容,这里只看看中文横排和直排的内容(详细见文末)比如:
参数 | 横排 | 直排 |
---|---|---|
文件名 | upschr-h | upschr-v |
DIRECTION | - | TATE |
CHARWD | 1.000000 | 1.000000 |
CHARHT | 0.500000 | 0.880000 |
CHARDP | 0.500000 | 0.120000 |
从上表可以看到横排和直排(字形的)盒子模型的区别,特别是 DIRECTION 和字体名称。两个文件中都包含 GLUEKERN 这个“小程序”,就是 list,默认的汉字作为 TYPE O 0,标点符号分不同的组,这是为什么呢?这就是 CJK 排版和西文排版的区别,ASCII 可以包含常用的西文字符,简单理解为等宽的半宽字符,而中文的字符是等宽的标点符号却不完全是,在一些地方存在压缩。TeX 系统有一个 glue 的概念,是弹性的,所谓弹性的意思是:glue 有一个固有尺寸,可以压缩也就是 shrink,也往左右扩张叫做 stretch,所以一个 glue 包含三个数值,width stretch shrink,那么对于汉字而言,这三个值不是变的,标点符号则不是。具体在一行中是否要改变 glue 的值,在 TeX 排版的时候会根据情况判断的。所以现在绕回来,这个 gluekern 有什么用,其实就是设置不同类型的标点两两组合,以及汉字+标点的组合之间的 glue 的值。
中文字和日文字体的区别呢?
中文和日文区别upschr-h.pl
(COMMENT THIS IS A KANJI FORMAT FILE)
(FAMILY UPSCH KANJI)
(FACE F MRR)
(CODINGSCHEME TEX KANJI TEXT)
(DESIGNSIZE R 10.0)
(COMMENT DESIGNSIZE IS IN POINTS)
(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
(CHECKSUM O 0)
(FONTDIMEN
(SLANT R 0.0)
(SPACE R 0.0)
(STRETCH R 0.100000)
(SHRINK R 0.0)
(XHEIGHT R 1.000000)
(QUAD R 1.000000)
(EXTRASPACE R 0.250000)
(EXTRASTRETCH R 0.200000)
(EXTRASHRINK R 0.125000)
)
(GLUEKERN
(LABEL O 0)
(GLUE O 1 R 0.500000 R 0.0 R 0.500000)
(GLUE O 3 R 0.250000 R 0.0 R 0.250000)
(STOP)
(LABEL O 1)
(GLUE O 3 R 0.250000 R 0.0 R 0.250000)
(STOP)
(LABEL O 2)
(GLUE O 0 R 0.500000 R 0.0 R 0.500000)
(GLUE O 1 R 0.500000 R 0.0 R 0.500000)
(GLUE O 3 R 0.250000 R 0.0 R 0.250000)
(GLUE O 5 R 0.500000 R 0.0 R 0.500000)
(STOP)
(LABEL O 3)
(GLUE O 0 R 0.250000 R 0.0 R 0.250000)
(GLUE O 1 R 0.250000 R 0.0 R 0.250000)
(GLUE O 2 R 0.250000 R 0.0 R 0.250000)
(GLUE O 3 R 0.500000 R 0.0 R 0.250000)
(GLUE O 4 R 0.250000 R 0.0 R 0.250000)
(GLUE O 5 R 0.250000 R 0.0 R 0.250000)
(STOP)
(LABEL O 4)
(GLUE O 0 R 0.500000 R 0.0 R 0.0)
(GLUE O 1 R 0.500000 R 0.0 R 0.0)
(GLUE O 3 R 0.750000 R 0.0 R 0.250000)
(GLUE O 5 R 0.500000 R 0.0 R 0.0)
(STOP)
(LABEL O 5)
(GLUE O 1 R 0.500000 R 0.0 R 0.500000)
(GLUE O 3 R 0.250000 R 0.0 R 0.250000)
(KRN O 5 R 0.0)
(STOP)
)
(CHARSINTYPE O 1
‘ “ ( 〔 [ { 〈 《 「 『
【
UFF5F U3018 U3016 U301D
U2329 U301A
)
(CHARSINTYPE O 2
、 , : ; ’ ” ) 〕 ] } 〉 》
」 』 】
UFF60 U3019 U3017 U301F
U232A U301B U301E
)
(CHARSINTYPE O 3
・
U00B7
)
(CHARSINTYPE O 4
。 . ? !
)
(CHARSINTYPE O 5
— ― … ‥
)
(TYPE O 0
(CHARWD R 1.000000)
(CHARHT R 0.880000)
(CHARDP R 0.120000)
(COMMENT
(GLUE O 1 R 0.500000 R 0.0 R 0.500000)
(GLUE O 3 R 0.250000 R 0.0 R 0.250000)
)
)
(TYPE O 1
(CHARWD R 0.500000)
(CHARHT R 0.880000)
(CHARDP R 0.120000)
(COMMENT
(GLUE O 3 R 0.250000 R 0.0 R 0.250000)
)
)
(TYPE O 2
(CHARWD R 0.500000)
(CHARHT R 0.880000)
(CHARDP R 0.120000)
(COMMENT
(GLUE O 0 R 0.500000 R 0.0 R 0.500000)
(GLUE O 1 R 0.500000 R 0.0 R 0.500000)
(GLUE O 3 R 0.250000 R 0.0 R 0.250000)
(GLUE O 5 R 0.500000 R 0.0 R 0.500000)
)
)
(TYPE O 3
(CHARWD R 0.500000)
(CHARHT R 0.880000)
(CHARDP R 0.120000)
(COMMENT
(GLUE O 0 R 0.250000 R 0.0 R 0.250000)
(GLUE O 1 R 0.250000 R 0.0 R 0.250000)
(GLUE O 2 R 0.250000 R 0.0 R 0.250000)
(GLUE O 3 R 0.500000 R 0.0 R 0.250000)
(GLUE O 4 R 0.250000 R 0.0 R 0.250000)
(GLUE O 5 R 0.250000 R 0.0 R 0.250000)
)
)
(TYPE O 4
(CHARWD R 0.500000)
(CHARHT R 0.880000)
(CHARDP R 0.120000)
(COMMENT
(GLUE O 0 R 0.500000 R 0.0 R 0.0)
(GLUE O 1 R 0.500000 R 0.0 R 0.0)
(GLUE O 3 R 0.750000 R 0.0 R 0.250000)
(GLUE O 5 R 0.500000 R 0.0 R 0.0)
)
)
(TYPE O 5
(CHARWD R 1.000000)
(CHARHT R 0.880000)
(CHARDP R 0.120000)
(COMMENT
(GLUE O 1 R 0.500000 R 0.0 R 0.500000)
(GLUE O 3 R 0.250000 R 0.0 R 0.250000)
(KRN O 5 R 0.0)
)
)
upschr-v.pl
(COMMENT THIS IS A KANJI FORMAT FILE)
(DIRECTION TATE)
(FAMILY UPSCH KANJI)
(FACE F MRR)
(CODINGSCHEME TEX KANJI TEXT)
(DESIGNSIZE R 10.0)
(COMMENT DESIGNSIZE IS IN POINTS)
(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
(CHECKSUM O 0)
(FONTDIMEN
(SLANT R 0.0)
(SPACE R 0.0)
(STRETCH R 0.100000)
(SHRINK R 0.0)
(XHEIGHT R 1.000000)
(QUAD R 1.000000)
(EXTRASPACE R 0.250000)
(EXTRASTRETCH R 0.200000)
(EXTRASHRINK R 0.125000)
)
(GLUEKERN
(LABEL O 0)
(GLUE O 1 R 0.500000 R 0.0 R 0.500000)
(GLUE O 3 R 0.250000 R 0.0 R 0.250000)
(STOP)
(LABEL O 1)
(GLUE O 3 R 0.250000 R 0.0 R 0.250000)
(STOP)
(LABEL O 2)
(GLUE O 0 R 0.500000 R 0.0 R 0.500000)
(GLUE O 1 R 0.500000 R 0.0 R 0.500000)
(GLUE O 3 R 0.250000 R 0.0 R 0.250000)
(GLUE O 5 R 0.500000 R 0.0 R 0.500000)
(STOP)
(LABEL O 3)
(GLUE O 0 R 0.250000 R 0.0 R 0.250000)
(GLUE O 1 R 0.250000 R 0.0 R 0.250000)
(GLUE O 2 R 0.250000 R 0.0 R 0.250000)
(GLUE O 3 R 0.500000 R 0.0 R 0.250000)
(GLUE O 4 R 0.250000 R 0.0 R 0.250000)
(GLUE O 5 R 0.250000 R 0.0 R 0.250000)
(STOP)
(LABEL O 4)
(GLUE O 0 R 0.500000 R 0.0 R 0.0)
(GLUE O 1 R 0.500000 R 0.0 R 0.0)
(GLUE O 3 R 0.750000 R 0.0 R 0.250000)
(GLUE O 5 R 0.500000 R 0.0 R 0.0)
(STOP)
(LABEL O 5)
(GLUE O 1 R 0.500000 R 0.0 R 0.500000)
(GLUE O 3 R 0.250000 R 0.0 R 0.250000)
(KRN O 5 R 0.0)
(STOP)
)
(CHARSINTYPE O 1
‘ “ ( 〔 [ { 〈 《 「 『
【
UFF5F U3018 U3016 U301D
U2329 U301A
)
(CHARSINTYPE O 2
、 , ’ ” ) 〕 ] } 〉 》
」 』 】
UFF60 U3019 U3017 U301F
U232A U301B U301E
)
(CHARSINTYPE O 3
・ : ;
U00B7
)
(CHARSINTYPE O 4
。 .
)
(CHARSINTYPE O 5
— ― … ‥
)
(TYPE O 0
(CHARWD R 1.000000)
(CHARHT R 0.500000)
(CHARDP R 0.500000)
(COMMENT
(GLUE O 1 R 0.500000 R 0.0 R 0.500000)
(GLUE O 3 R 0.250000 R 0.0 R 0.250000)
)
)
(TYPE O 1
(CHARWD R 0.500000)
(CHARHT R 0.500000)
(CHARDP R 0.500000)
(COMMENT
(GLUE O 3 R 0.250000 R 0.0 R 0.250000)
)
)
(TYPE O 2
(CHARWD R 0.500000)
(CHARHT R 0.500000)
(CHARDP R 0.500000)
(COMMENT
(GLUE O 0 R 0.500000 R 0.0 R 0.500000)
(GLUE O 1 R 0.500000 R 0.0 R 0.500000)
(GLUE O 3 R 0.250000 R 0.0 R 0.250000)
(GLUE O 5 R 0.500000 R 0.0 R 0.500000)
)
)
(TYPE O 3
(CHARWD R 0.500000)
(CHARHT R 0.500000)
(CHARDP R 0.500000)
(COMMENT
(GLUE O 0 R 0.250000 R 0.0 R 0.250000)
(GLUE O 1 R 0.250000 R 0.0 R 0.250000)
(GLUE O 2 R 0.250000 R 0.0 R 0.250000)
(GLUE O 3 R 0.500000 R 0.0 R 0.250000)
(GLUE O 4 R 0.250000 R 0.0 R 0.250000)
(GLUE O 5 R 0.250000 R 0.0 R 0.250000)
)
)
(TYPE O 4
(CHARWD R 0.500000)
(CHARHT R 0.500000)
(CHARDP R 0.500000)
(COMMENT
(GLUE O 0 R 0.500000 R 0.0 R 0.0)
(GLUE O 1 R 0.500000 R 0.0 R 0.0)
(GLUE O 3 R 0.750000 R 0.0 R 0.250000)
(GLUE O 5 R 0.500000 R 0.0 R 0.0)
)
)
(TYPE O 5
(CHARWD R 1.000000)
(CHARHT R 0.500000)
(CHARDP R 0.500000)
(COMMENT
(GLUE O 1 R 0.500000 R 0.0 R 0.500000)
(GLUE O 3 R 0.250000 R 0.0 R 0.250000)
(KRN O 5 R 0.0)
)
)
网友评论