CTeX-org / ctex-kit

Macro Packages and Scripts for Chinese TeX users
966 stars 124 forks source link

founder字库中方正小标宋GBK已经无法找到 #643

Open Firestar-Reimu opened 1 year ago

Firestar-Reimu commented 1 year ago

方正小标宋GBK似乎已经下架:

https://www.foundertype.com/index.php/FontInfo/index/id/164

现在只有简体(FZXBSJW.ttf: FZXiaoBiaoSong-B05S)和繁体(FZXBSB.ttf: FZXiaoBiaoSongB-B05)

而方正大标宋还能使用且提供GBK:

https://www.foundertype.com/index.php/FontInfo/index/id/126

字体为FZDBSK.ttf: FZDaBiaoSong-B06

更新

公文写作常用字体安装包 http://www.jieyang.gov.cn/jtys/xzzx/content/post_581680.html

Firestar-Reimu commented 1 year ago

另外:founder字体也没有定义 \textbf{\textit{}}

AlphaZTX commented 1 year ago

@Firestar-Reimu 在默认设置下,中文字体本来就没有BoldItalic。这个你不用管。

Liam0205 commented 1 year ago

related: https://github.com/CTeX-org/forum/issues/271

duskmoon314 commented 1 year ago

这个 issue 能否重新打开?方正官方不提供小标宋GBK,且该字体不是免费商用字体。是否可以考虑默认字体换为书宋、楷体、黑体、仿宋的组合?

Firestar-Reimu commented 1 year ago

有一个比较hacking的方法是首先从某些地方(比如这里)找到一个旧版的小标宋(v1.10)

然后去字加APP内识别本地字体,就可以找到最新版(v5.40)小标宋GBK,如图:

image

muzimuzhi commented 1 year ago

同时追求中文字体的免费商用 + 高质量 + 大字符集 + 整套风格一致 + 可移植性,目前为止是一个无解的问题。

就 ctex 提供的预设字体配置而言,

近年,字厂对个人非商用纷纷采取免费或低价(且一次性买断)方式授权,这提供了(个人非商业使用)字体搭配的新可能。ctex 项目缺乏人力进行跟进,用户可以自行设置和分享。只需分发以 ctex-fontset-<name>.def 方式命名的文件(还要减少 <name> 的重名可能),并使其能被 kpsewhich 找到,就能通过 \ctexset{fontset=<name>} 加载。

方正官方不提供小标宋GBK,且该字体不是免费商用字体。是否可以考虑默认字体换为书宋、楷体、黑体、仿宋的组合?

@duskmoon314 只用书宋、楷体、黑体、仿宋四款,是不够的。以 founder 配置下 xelatex/lualatex 的预设字体为例,因为 \rmfamily 的书宋缺乏粗体,于是引入了小标宋。黑体被留作 \sffamilyhttps://github.com/CTeX-org/ctex-kit/blob/c7ad382ec8f9df229b59c1a80cb5d45bad988e18/ctex/ctex.dtx#L10780-L10791

不同用户、不同使用场景,会对「是否接受伪粗」、「宋体的粗体,是用较粗的宋体还是黑体」、「如何配置中文字体以区分 \rmfamily, \sffamily, \ttfamily」、「配置中文字体时要不要放弃与西文字体(NFSS/fontspec)的对应关系」有不同的回答。可能性是如此之多,ctex 难以完全覆盖。

好在字体配置不长,欢迎用户根据需要更改和扩展。也许 ctex 文档中可以更明显地提及字体配置文件和如何获取它们的本地路径,方便用户查看、基于它们进行更改。


ctex 提供的字体配置里,使用了用户从方正字库官网无法获取授权的小标宋 GBK,肯定是个问题。

就目前的兴趣和精力,我不知道从 ctex 方面,应该做哪些更改。从设计上,大标宋适合更大字号的排印,替换小标宋可能造成视觉上的字形差异/不适。(ctex 目前提供的所有字体配置,都优先考虑正文排版,没有为标题字号单独设置字体)回到小标宋 gb2312?推荐其他自带粗体的方正(正文)宋体?

最后,注意 ctex 项目不可能也不应当提供侵犯字体版权的便利。

Firestar-Reimu commented 1 year ago

fandol 侧重免费(有人对授权有争议)和可移植性

最大的问题就是这是GB2312的字体,大量缺字,其实对可移植性有影响

不同用户、不同使用场景,会对「是否接受伪粗」、「宋体的粗体,是用较粗的宋体还是黑体」……

确实,我正在使用的(一个同样不会让所有人满意的)解决方法就是将宋体的粗体设置为黑体。

duskmoon314 commented 1 year ago

我正在使用的(一个同样不会让所有人满意的)解决方法就是将宋体的粗体设置为黑体。

我个人觉得从排版的角度来看,粗体默认设置为黑体是更合理的。不过考虑使用场景,ctex 现在的选择我也理解。

也许 ctex 文档中可以更明显地提及字体配置文件和如何获取它们的本地路径,方便用户查看、基于它们进行更改。

我试着找了 ctex-font-<name>.def 文件,看上去似乎是构建时生成的,我对字体配置的细节不熟故不太清楚该如何增加字体集。如有可能,也希望能有更细致的关于如何添加字体集的说明。

sikouhjw commented 1 year ago

我试着找了 ctex-font-<name>.def 文件,看上去似乎是构建时生成的,我对字体配置的细节不熟故不太清楚该如何增加字体集。如有可能,也希望能有更细致的关于如何添加字体集的说明。

这部分去看 texdoc ctex 背后的代码解释就行了,不懂得命令查下手册。再把 .def 放 local 目录或者工作目录即可。可以参考 https://sikouhjw.github.io/2021/02/14/2021-02-14-fontset-overleaf 里面的 .def 代码。

muzimuzhi commented 1 year ago

也许 ctex 文档中可以更明显地提及字体配置文件和如何获取它们的本地路径,方便用户查看、基于它们进行更改。

我试着找了 ctex-font-<name>.def 文件,看上去似乎是构建时生成的,我对字体配置的细节不熟故不太清楚该如何增加字体集。如有可能,也希望能有更细致的关于如何添加字体集的说明。

其实没什么细节,尤其是在 xelatex/lualatex 下,和用户手动配置字体的写法差不多(都是中文支持包提供的用户命令)。具体实现在 texdoc ctex (2022/07/14 v2.5.10), sec. 14.15.2 预定义字库。\ctex_fontset_case:nnnn 等命令也能在同一个文档里搜到定义附近的注释。

已经离题了,确实需要继续讨论「用 xx 中文支持包时如何配置中文字体」,建议新开 issue。

duskmoon314 commented 1 year ago

已经离题了

确实,本 issue 还是讨论方正官方不提供小标宋GBK后怎么支持吧

Firestar-Reimu commented 1 year ago

更新:

而方正大标宋还能使用且提供GBK: https://www.foundertype.com/index.php/FontInfo/index/id/126 字体为FZDBSK.ttf: FZDaBiaoSong-B06

这个也没有GBK了,只有简体和繁体


方正官方不提供小标宋GBK其实挺迷惑的

毕竟国家有规定:

按照《党政机关公文格式》国家标准(GB/T 9704-2012)的规定: 公文的发文机关标志和公文标题必须使用小标宋 公文的发文字号、主送机关、抄送机关和公文正文等必须使用仿宋 公文的密级、保密期限和紧急程度必须使用黑体 公文的签发人和文中结构层次序的第二层必须使用楷体

https://www.foundertype.com/index.php/About/solveGoverment.html

而且方正有大量的字库都是GB2312的(这是否是一种GBK发展的阻力),或者分别提供GB2312和BIG5编码版本

https://www.foundertype.com/heji_i/16/p/7.html 可以发现小标宋_GBK已经标识为不可获得字体

muzimuzhi commented 1 year ago

毕竟国家有规定:

按照《党政机关公文格式》国家标准(GB/T 9704-2012)的规定: 公文的发文机关标志和公文标题必须使用小标宋 [...]

https://www.foundertype.com/index.php/About/solveGoverment.html

同样在这个网页(我加粗了「小标宋」三个字),

《方正兰亭GBK办公字库》是北大方正电子有限公司开发的标准TrueType中文字库,采用GBK编码,共收录汉字21003字,包含8款GBK字库(黑体、宋体、仿宋、楷体、超粗黑、隶书、小标宋、魏碑)可运行于Windows、Linux等系统中,并能满足在办公软件中对中文字库的要求。

也不排除是官网没更新、信息不一致。

Firestar-Reimu commented 1 year ago
  1. 方正GBK字库似乎是要国家机关单位等等花钱买的
  2. 方正官网上写的简体和繁体,简体可能是GBK也可能是GB2312,离谱,可以试一下一些GB2312以外的字(例如我室友的名字有个“浛”)
Liam0205 commented 1 year ago

一个可能的方案?

对于 founder 字库,检测小标宋是否存在。如果存在,使用它作为 rmfamilybfseries 字体。若不然,则使用黑体作为 fallback。

AlphaZTX commented 1 year ago

@Liam0205 这个方案可行性很好

maxchendt commented 1 year ago

前面 Firestar-Reimu 的方法没有搞定 ver 5.4

找到了如下的文件,是 5.3 版本的, 凑合用

~$ wget http://d.xiazaiziti.com/fonts/fangzhengfonts/FZXBSK.TTF --2023-03-24 21:53:37-- http://d.xiazaiziti.com/fonts/fangzhengfonts/FZXBSK.TTF Resolving d.xiazaiziti.com (d.xiazaiziti.com)... 124.221.121.63 Connecting to d.xiazaiziti.com (d.xiazaiziti.com)|124.221.121.63|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 13905904 (13M) [application/octet-stream] Saving to: ‘FZXBSK.TTF’ FZXBSK.TTF 100%[=======================================================================>] 13.26M 102KB/s in 2m 20s
2023-03-24 21:55:58 (96.8 KB/s) - ‘FZXBSK.TTF’ saved [13905904/13905904]