trionestype / zhuque Goto Github PK
View Code? Open in Web Editor NEW朱雀仿宋/朱雀宋朝/Zhuque Fangsong: An open-source Fangsong typeface project
License: SIL Open Font License 1.1
朱雀仿宋/朱雀宋朝/Zhuque Fangsong: An open-source Fangsong typeface project
License: SIL Open Font License 1.1
latex配置:
\setCJKfamilyfont{zhfs}{FONT_ZhuqueFangsong-Regular.TTF}
\renewcommand*{\fangsong}{\CJKfamily{zhfs}} % 仿宋
代码
{\fangsong 1、2、3、4,全局定位球觉得,}
本 issue 集中记录增加字形问题。
请问项目挂了吗,好久没更新了,下载的字体名称会有长长的”预览版“几个字
如果有源代码,就可以直接通过源代码构建 ttf 字体文件,更加方便 Linux 发行版打包。
安装 0.107 版后,在Office 365 Word中应用,西文成功,中文失败,仍显示为 SimSun。怀疑与Windows 系统语言为英语有关?但其他字体无此问题,不知道是否需要额外做什么操作?
本 issue 集中记录不美观单字或特定部件字族的设计问题。
缺少假名浊点特性,例如显示“く゚”需要用到。可以用微软雅黑的mark+ccmp,或游ゴシック用的liga+ccmp(我认为雅黑的更省字体体积)
loclZHS
的“—”不符合破折号两端不顶格的要求,虽然造型上不会与一一连起来。但“…”需要居中,而这个“ellipsis.loclZHS”或“ellipsis.fwid”可赋予码位U+22EF(⋯),毕竟没规定宽度,东亚字体的“⋯”一般是设为全角的,如Adobe 宋体 Std、MS Gothic…
似乎缺少统一码变体序列。
这个问题是Alegreya的:ss01
(罗马数字?)在中文字体里恐怕永远用不上,可以删除以减少字体体积。
字体有问题。数字和英文都会显示为乱码
The vert
OpenType feature lacks vertical ellipsis support, causing horizontal rendering (…
) in some vertical text contexts. While many modern applications and browsers handle this adequately, the inclusion of this feature is crucial for compatibility with older software. Please consider adding a vertical ellipsis glyph (︙
) and mapping it in the OpenType feature. Thank you.
本 issue 集中记录字形设计错误(不合目标规范、笔画增减)等。
在Word中,以五号字为例,宋体的单倍行距正常,但是朱雀仿宋的单倍行距看起来像2倍行距。把字体缩小到五号字以下后行距就没有问题了
(此处略去因历史原因,有些(半个)中文标点就是等同西文标点的问题。标点名及描述依新华字典)
破折号:横线、两倍全角、对齐汉字、不中断两端不顶格,当前编码方案与—(U+2014)冲突,统一码或应收录;
省略号:六点、两倍全角、对齐汉字,当前编码方案与…(U+2026)冲突,统一码应收录;
间隔号:圆点、全角、对齐汉字,与·(U+00B7)冲突;
引号:全角,蝌蚪形(弯引号),与“‘’”(U+201x)冲突,尤其隔音号就是「’」;
着重号:形如汉字下一圆点,统一码欠收录;
专名号:限古籍和文史著作,形如专名下一横线,专名之间断开(如“成都司马相如”,断在“都司”之间),欠编码方案,统一码难以收录;
浪线:限与专名号配合,替换书名号,欠编码方案,统一码难以收录;
——新华字典没提的如示亡号没写。上述标“统一码应收录”是指这这些标点应当视为一个2倍字宽、换行不中断的标点,而不是需要连打2次的标点。
目前大多东亚字体对此有各异的策略,但皆不能解决中西混排出现难堪的情况,特别是——
把「’」做成全角,导致夹的西文「I’m」成了「I’ m」。思源也尤其依赖特性解决破折号,而且有问题。
我选择—(U+2014)默认为西文em线,维持Alegreya原状。
而西文标点⸺(U+2E3A TWO-EM DASH : omission dash)我考虑已知中西混排文献里不像「’」常用,不如说前所未见,则默认为两倍全角、对齐汉字、两端不顶格,充当破折号代餐。
不支持字体特性的软件需要复制粘贴使用。
思源的问题在连⸻(U+2E3B THREE-EM DASH)也做了还加入特性,不仅导致横排时撑行距(ichitenfont/I.Ming#18 (comment) ),而且遇到4连击————就很难看了,我认为特性应当考虑此类不按章法来的情况。
我选择…(U+2026)默认为西文3点略号,维持Alegreya原状。
将⋯(U+22EF)做成全角、对齐汉字来冒充,因为这个符号是数学省略号,统一码没规定宽度,而东亚字体的“⋯”一般是设为全角的,如Adobe 宋体 Std、MS Gothic…
不支持字体特性的软件需要复制粘贴使用。
最佳解法当然是让统一码收个六点省略号,现在连代餐都没有😓
我选择·(U+00B7)默认为西文中点,维持Alegreya原状。
将日文中点・(U+30FB KATAKANA MIDDLE DOT)做成全角、对齐汉字充当间隔号,这个在语义上应该问题不大?
不支持字体特性的软件需要复制粘贴使用。
我选择默认西文弯引号,维持Alegreya原状。
注意到有提案:https://www.unicode.org/L2/L2023/23212r-quotes-svs-proposal.pdf 那么朱雀可以提前支持全角引号VS(变体序列),但问题是不支持字体特性的软件是否支持VS,似乎支持VS的软件更广泛?#19 (comment)
关于代餐符号,我只见过一个人用❝❛❜❞(U+275x HEAVY ~ COMMA QUOTATION MARK ORNAMENT,属于2700 Dingbats区段的Ornament,甚至不是标点)当蝌蚪引号的。我是否该选择这个?
目前无解,请大家设计编码方案。网页CSS都很难做到专名之间断开而专名不断。
我制作了一个示例:ZhuqueFangsong-v0.1086.zip
请检查有无问题。
西文标点是比例宽度并非等于半角,同时默认与小写西文对齐,显得各种括号在汉字靠下位置。一个高级西文字体往往还内置一套与大写西文对齐的标点,但不直接暴露给用户,在遇到上下文为大写时自动通过case
特性调用。朱雀目前借用的Alegreya就藏了52个case标点字形以及几十个lf数字(大写平齐)
不支持字体特性的软件是无解的,中文西文总有一方难看。难道要用私用区吗。
目前策略是除了上述冲突情况,仅位于3000中日韩符号及标点
FF00半角及全角
区段的默认做成中文标点(因为西文必然不用),其它皆小写西文标点,依赖特性改变。
(我剪贴板太乱了,先贴上来,之后再整理。下文配图 )
我个人觉得仿宋体配的西文部分应当是拼音(Italic/手写),因此对Alegreya作如下修改。
① Alegreya最细字重仍然比朱雀仿宋的汉字要粗,于是用源文件外插获得字重较为搭配的实例。因此如图3,我自己的Alegreya可变字体(未发布)有3层实例了。注意如图2,朱雀仿宋v0.108的源文件没有外插,README.md自述有误。
此时我还没意识到Alegreya源文件有毛病 #21 (comment)
下文若没说是我带来的问题,那就是Alegreya原有的问题。
② 如图1新华字典所示,阳平“ˊ”声调应当写作“㇀”提,我修改了大部分,不过如 Ǻǻ 等不属于拼音就没改。
③ 如图1,所有ag
都改成ɑɡ
(U+0251,U+0261)写法。ŋ不用Alegreya造型,改作ng连字,Ŋ改作**特有的И形J尾,并予kern
。
这部分修改并非直接替换而是另外补充,保留了原始agŊŋ字形,可通过特性ss01
调用。
④ 补充了连字(于字母表现形式区段)st、竖排︕︖映射。
⑤ 添加手写风格的⛤(☆),中文省略号(也需通过locl
特性调用)
如图1,我认为位于拉丁-1区段的微(micro-)µ(U+00B5,即微软的Micro)与希腊μ(U+03BC)是不同的文字,因此前者做成拉丁造型。
⑥ 算是赠品吧,如图1图3,Q的“捺”改成仿宋笔触,并且会根据后方字符左下角是否有空选择性伸脚(例句:QǔQí☆)。另外西里尔文“Ԛ”特意保留了原始的Q的形状,在必要的时候可以自行替换。
又更新了:ZhuqueFangsong-v0.1086.zip
解决了v0.1085的错误,添加了这些需手动复制使用的标点,请检查有无问题。
GB13000.1 附录A 里的拼音
A8 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
A | ā 0101 |
á 00E1 |
ǎ 01CE |
à 00E0 |
ē 0113 |
é 00E9 |
ě 011B |
è 00E8 |
ī 012B |
í 00ED |
ǐ 01D0 |
ì 00EC |
ō 014D |
ó 00F3 |
ǒ 01D2 |
|
B | ò 00F2 |
ū 016B |
ú 00FA |
ǔ 01D4 |
ù 00F9 |
ǖ 01D6 |
ǘ 01D8 |
ǚ 01DA |
ǜ 01DC |
ü 00FC |
ê 00EA |
ɑ 0251 |
ḿ 1E3F |
ń 0144 |
ň 0148 |
ǹ 01F9 |
C | ɡ 0261 |
…… |
mark
特性可能不佳。Alegreya源文件自带的问题。仿宋是“有”衬线体,而➀(U+2780 DINGBAT CIRCLED SANS-SERIF DIGIT ONE)~➉、➊(U+278A DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT ONE)~➓统一码规定了是无衬线体(SANS-SERIF),因此凡是仿宋体不需要支持这20字。
❶(U+2776 DINGBAT NEGATIVE CIRCLED DIGIT ONE)~❿没有规定字体,也许会做。
现在我国大陆初高中语文教材对古诗文中许多字采用简化字,如“重湖叠巘清嘉”的“巘”采用“𪩘”(山献),“摐金伐鼓下榆关”的“摐”采用(扌从 U+2AB62),但大部分字体都不包含这些字(我目前没有找到包含U+2AB62的字体),因此大部分出版物(似乎也包括课本)以图片(有很多看起来像是位图)代之,给排版和阅读都带来了很多不便。如果你们的字体能包含这些简化字,或者用OpenType字体特性实现适配,鄙人感激不尽。(不过这个要求好像有点小众)
希望可以对字体优化以适用于屏幕阅读改善作为电子书正文字体的阅读体验
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.