宋体(Simsun)和新宋体(NSimsun)的区别

我们平常说的宋体(Simsun)全称为中易宋体,它和新宋体(NSimsun)是由北京中易中标电子信息技术有限公司制作并持有版权的两个TrueType 字体。自从微软向中易购买了这套字型后,它便成为了简体中文使用者最熟悉的字体,而Office中文版则包含了新宋体,但这两套字体的区别让不少人感到非常疑惑。

百度百科如此解释:“和宋体类似,中文字都是方块字,等宽等高。宋体和新宋体的中文字符都是一样并且共享的。不同点在于其中的latin部分,也就是这些拉丁字母分为等宽和非等宽。例如,比例字体的i和w明显是不等宽的,但是等宽字体的i和w的宽度是相等的。老外可能觉得比例字体看起来更舒适些。但是等宽字体在排版上有能够对齐的优势。也因为宋体和新宋体的中文字符都是一样且共享的,不同的只有latin部分。如果拆开成2个字体的话,每个都有8、9M,加起来就占用了十几M的存贮空间。合并后却只有10M左右。所以才把他们集合在一起,成为一个ttc。如果2个字体本身没有相同的地方也就没合并的必要了。”

这段话成了不少问题底下回答者的“答案”,提问者看了后也觉得煞有介事,但如果你有探索精神,试验一下会发现根本不是这回事。我在记事本默认的12号字体(中文系统是小四?)下,无论是汉字、拉丁字母还是标点,两者没有任何区别。正在困惑之际,我无意间把字号改成了11,这时意外发生了,和百度百科的解释恰恰相反,你会发现英文完全没有变化,宋体的汉字和英文两行却变得不再对齐,而新宋体的中文和英文上下两行仍旧完美地对应。鉴于百度百科完全没有维基百科的严谨,其词条中的内容一向是随处复制的,所以当试验结果与此段话明显不符时,在找不到内容来源时你没有任何理由相信它。

在Word中又试验了一遍,但或许是因为Word中的自动排版功能,调整字号后再调整字体,部分字的间距有所变化,而整个句子的长度没有改变,但仍然验证了记事本中的结果。

而在两者的Font Info里可以看到:宋体标记为非等宽,而新宋体标记为等宽。

通过这些我如此猜测:一,两者其实并无明显不同,只不过一个设为了等宽字体,而另一个设为非等宽字体;二,但由于未知原因,假如想要完全达到等宽字体的效果,最好采用新宋体。

宋体虽然常用,但其实并不是一套很好的字体,尤其是其西文字母,设计得极其难看。鉴于此,微软自从Vista系统开始,为简体中文使用者们提供了一套“一字千金”(据说1个汉字100美元)的“微软雅黑”字体。但个人感觉也不算很完美,雅黑虽然解决了宋体一系列的问题,整体也更加美观,但由于渲染效果不够好,很多用户已经习惯了XP下点阵效果的宋体,便会觉得雅黑很“模糊”。这套字体作为正文来看略显宽扁,在Windows下还有字符重心不一致等毛病。唉,渲染模式决定了效果啊,虽然在Windows下也可以用GDI++或者是MacType来提升渲染效果,但实在很麻烦。真期待在下一代的Windows中微软能改善这些,但显然不太可能了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/436205.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

商业计划书最好就是十页篇幅

第一页是市场介绍;第二页分析市场问题;第三页写解决问题的方式;第四页调研市场;第五页分析竞争对手;第六页介绍核心竞争力;第七页写盈利模式;第八页写近期目标;第九页写资金预算&…

java import 出错,Eclipse的java代码出错:The import XXXX cannot be resolved

折腾Eclipse时,经常会遇到这种情况:缺少某个库,找到之后,需要将该库,jar包,加入到当前项目,使得代码中的import xxx得以正常导入。【如何在Eclipse中导入/添加(外部的)库/jar包】基本思路&#…

Platform Builder实践之配置文件

这篇文章主要讲解PB的配置文件。从用途方面分析,PB包含两种配置文件。分别是源码配置文件和镜像配置文件。下面分别讲解这两种配置文件。 一、源码配置文件:源码配置文件用于编译源码时使用。这里的源码是指Windows CE公开的源码,如驱动程序、…

【转】itk、vtk、qt 显示dicom 数据

转自:https://blog.csdn.net/Zzhouzhou237/article/details/107199076/ 以下代码实现了itk读取dicom数据,转换为vtkData,然后用Qt显示。 1、Qt Designer 搭建界面,QVTKOpenGLNativeWidget 是vtk的一个类,连接qt与vtk…

页面执行顺序

今天写绑定下拉用户控件中,下拉列表的数据时,发现竟然后台的数据为空. 今天才有点明白页面的执行顺序。 转载于:https://www.cnblogs.com/jskingli/archive/2008/05/09/1190176.html

Windows CE创建桌面快捷方式

在使用Platform Builder创建Windows CE系统的内核映入文件NK.bin时, 创建一个桌面快捷方式的步骤如下:1、创建一个快捷方式文件Test.lnk,格式如下: 17#/Windows/Test.exe 其 中,17表示#后面有多少个字符 2、将此文件拷…

php 国密,PHP实现国密算法SM4

1.SM4算法实现class SM4{const SM4_CK [0x00070e15, 0x1c232a31, 0x383f464d, 0x545b6269,0x70777e85, 0x8c939aa1, 0xa8afb6bd, 0xc4cbd2d9,0xe0e7eef5, 0xfc030a11, 0x181f262d, 0x343b4249,0x50575e65, 0x6c737a81, 0x888f969d, 0xa4abb2b9,0xc0c7ced5, 0xdce3eaf1, 0xf8ff…

【转】WM_MESSAGE、WM_COMMAND、WM_NOTIFY等消息有什么不同

转自:https://blog.csdn.net/newstarao/article/details/3775690 WM_MESSAGE是最普通的WINDOWS消息,对于这种类型的消息没什么好说的。那WM_COMMAND和WM_NOTIFY消息都是WINDOWS CONTROL给它的父窗体发的消息,那这两种消息有什么不同呢&#…

修改了WINCE自带的驱动程序后如何编译

修改了WINCE自带的驱动程序后如何编译?如果是自己开发的驱动程序如何编译? 1、分为IDE方式和命令行方式。 IDE 方式的编译很简单,以PB5.0为例,打开定制内核的工程,在左边的“workspace”—“FileView”中找到你已经修…

Properties 类的使用

Properties 类已不是新东西了,它在 Java 编程的早期就有了,并且几乎没有什么变化。J2SE 的 Tiger 版本增强了这个类,不仅可以用它在单独一行中指定用等号分隔的多个键-值对,还可以用XML 文件装载和保存这些键-值对。在 驯服 Tiger…

php 9000 端口没起来,ubuntu fpm-php 未监听9000端口问题

今天搞一台新的ubuntu服务器;配置好nginx后 死活解析不了php文件,反复修改配置文件未果;于是怀疑fpm-php,遂 :netstat -ant |grep 9000惊奇的发现9000端口竟然没有被占用,可是php5-fpm服务已经开启了;于是查…

【转】控件通知消息

转自:https://blog.csdn.net/kinghzking/article/details/6180956 2008年04月06日 星期日 00:09 控件通知消息有很多种,但是有一种是很常用,但是又不是很容易掌握的,那就是WM_NOTIFY,我试着对此做一下比较全面的论述…

python 装饰器 java,python之各种装饰器的使用

"""装饰器,带参数的装饰器,类的装饰器判断是否为可迭代的from collections import Iterableprint(isinstance([1,2,3],Iterable))"""# 1、简单的装饰器def debug(func):def wrap():print(fdebug:func name is {func.__nam…

WINCE 网卡控制

最近在搞wifi上网,看了些这方面的资料,稍微总结点东西:) DeviceIoControl和底层通信: 方法1 :把第二个参数设为IOCTL_NDIS_REBIND_ADAPTER。 方法2 :把第二个参数设为IOCTL_NDIS_UNBIND_ADAPTER…

【转】调用约定__cdecl、__stdcall和__fastcall的区别

什么是调用约定 函数的调用约定,顾名思义就是对函数调用的一个约束和规定(规范),描述了函数参数是怎么传递和由谁清除堆栈的。它决定以下内容:(1)函数参数的压栈顺序,(2)由调用者还是被调用者把参数弹出栈,(3)以及产生…

WCF从理论到实践(14):WCF解决方案模板 (转)

WCF从理论到实践(14):WCF解决方案模板 正所谓磨刀不误砍柴工,虽然VS2008为我们提供了WCFServiceLibrary项目模板,但在实际开发的时候,我们通常更喜欢按照自己的方式来建立WCF项目,通常情况下,我们将服务契约(通常是接口)数据契约,消息契约等契约单独作为一个项目,而将服务的实现…

java面试宝典 多线程,《java面试宝典》之java多线程面试题

1:什么是线程?轻量级的进程2:线程的三个部分是?处理机代码数据3:为什么使用多线程使UI响应更快利用多处理器系统简化建模4:代码示例:Java中实现多线程的两种方式,包括如何定义多线程…

【转】__declspec用法详解

__declspec用法详解 __declspec用于指定所给定类型的实例的与Microsoft相关的存储方式。其它的有关存储方式的修饰符如static与extern等是C和 C语言的ANSI规范,而__declspec是一种扩展属性的定义。扩展属性语法简化并标准化了C和C语言关于Microsoft的扩展。 用法&am…

EBOOT跳转到NK的过程

先做个说明:我的平台环境是:CE5.0(S3C2450)。 我的config.bib定义的镜像起始地址为0x8c20 0000(虚拟地址), EBoot将镜像下载到以0x8c20 0000为起始地址的RAM中, 但实际上OS跳转的地址却是0x8c20 1000, 也就是说, 传递到Lauch函数的…

thinkphp index.php隐藏,thinkphp5怎么隐藏index.php入口文件?

隐藏方法:1、打开apache的http.conf配置文件,开启mod_rewrite.so模块;2、AllowOverride None项中将None改为All;3、修改“.htaccess”的配置内容,将原代码替换为官方手册提供的代码。thinkphp现在的php主流框架之一&am…