什么是好的编程字体:等宽字体


作为程序开发者,每天打交道最多的就是程序代码了,而每天读写几千行的代码让眼睛很容易产生疲劳,我自己对此已经是深恶痛绝了.为了保护自己眼睛同时提高自己的代码读写效率,显然是要从显示程序代码的字体入手.下面讲讲我编程多年以来代码字体的选择之路.

目前很多人都还在使用宋体作为自己IDE的程序显示字体,这个字体英文和数字的显示显然让我不敢恭维,看上十五分钟眼睛都酸胀到不行...

 fdsfd

生活没有目标,犹如航海没有罗盘。

Living without an aim is like sailing without a compass.

C:\System32\Test\test.txt

宋体代码显示样子,单独看估计也看不出什么效果

我对编程字体的要求比较高:字体大小要适中、字体必须是等宽,能轻松的分辨0,O,间距适中,才方便识别的条件下尽可能的显示更多的代码行数,下面就是我的个人比较推荐的等宽编程字体:

首先出场:

Courier New

 fdsfd

生活没有目标,犹如航海没有罗盘。

Living without an aim is like sailing without a compass.

C:\System32\Test\test.txt

是老牌的经典等宽编程字体了,Windows系统自带,很多代码编辑器默认的字体都是它,程序的教科书上也能经常看到它的身影。经典归经典但是我却不太喜欢它,用10px的吧,无论是液晶还是CRT显示器下都显的毛呼呼的,辨认起来很困难眼睛容易疲劳,用11px吧,字体几乎大了50%,本来字体间距就很宽,一变大,屏幕可视范围内无论是横向还是纵向就没有多少代码能看到了。没办法,用了一段时间后淘汰了它。

Source Code Pro

 fdsfd

生活没有目标,犹如航海没有罗盘。

Living without an aim is like sailing without a compass.

C:\System32\Test\test.txt

设计师:Paul D. Hunt

发行:Adobe Systems

创建时间:2012

许可证:SIL OPEN FONT LICENSE Version 1.1

当前最流行的一款编程字体,出自 Adobe 并且免费开源

Fixedsys

Fixedsys是和Courier New一样经典的字体,Windows系统自带,很多开发者都在用它,它属于点阵型字体,方方正正。但是由于是点阵字体,字体很粗且符号显示很难看,特别是复杂点的正则表达式读起来真是要我命3000.用了一段时间后淘汰...继续寻找。。

 fdsfd

生活没有目标,犹如航海没有罗盘。

Living without an aim is like sailing without a compass.

C:\System32\Test\test.txt

Consolas

 fdsfd

生活没有目标,犹如航海没有罗盘。

Living without an aim is like sailing without a compass.

C:\System32\Test\test.txt

Consolas是2005年微软随着VS.NET 2005发布的一款专用编程字体,凭着“专用”这2个字就让我使用了它很久,等宽,字体粗细均匀,用起来的确很不错。不过很可惜它也没让我坚持下来,原因有下:11px大小下粗体爆丑,完全和不粗的时候是2个样子,感觉就像发福了的美女。然后括号过高,多行代码开起来没有整齐的美感(天哪,我太完美主义了。。),在我变态的要求下,Consolas也被我pass了

Lucida Console

 fdsfd

生活没有目标,犹如航海没有罗盘。

Living without an aim is like sailing without a compass.

C:\System32\Test\test.txt

Lucida Console也是Windows自带的一款经典等宽字体,字体大小适中,字形美观大方,我看到时非常喜欢,但是使用一段时间后发现一个严重的问题:字行距太紧,2行代码之间几乎只有1px的距离,看多行代码时感觉一堆字符挤在一起十分难受,没办法,淘汰。。。

Monaco

 fdsfd

生活没有目标,犹如航海没有罗盘。

Living without an aim is like sailing without a compass.

C:\System32\Test\test.txt

Monaco据说是来自Mac的一位美女,认识她时我就深深的喜欢上了它,优雅的字体和符号让我使用了很久,但是用久了以后苛刻的我又挑出2个理由淘汰了它:字体过于细长,比起其他的字体识别起来要长,长时间阅读容易疲劳。字体行距距过长,与Lucida Console相反,Monaco行距相当高,加上字体本身就是细长的,导致一个页面显示行数比其他字体最多少出10行之多,每天我就不知道要多转多少次鼠标滚轮,所以。。淘汰。。

Lucida Sans Typewriter

 fdsfd

生活没有目标,犹如航海没有罗盘。

Living without an aim is like sailing without a compass.

C:\System32\Test\test.txt

它与Lucida Console本是同根生,拥有着Lucida家族的所有长处,而且最好的地方就是解决了Lucida  Console行距过短的问题,它无论是大小,可读性,美观我都无可挑剔,而且先前那些字体的不足它全部都没有。目前我将所有的编辑器的字体都设置为  Lucida Sans Typewriter ,不知道在未来我是否能够在它身上找出问题,但是至少它是我觉得最好的编程字体,现在我会一直使用它的。。

编程用字体选择标准:

1. 所有字符等宽;

2. 简洁、清晰、规范的字符形体;

3. 支持ASCII码为128以上的扩展字符集;

4. 空白字符(ASCII: 0x20)与其他字符等宽;

5. '1'、'l'和'i'等三个字符易于区分;

6. '0'、'o'和'O'等三个字符易于区分;

7. 双引号、单引号的前后部分易于区分,最好是镜像对称的;

8. 清晰的标点符号外形,尤其是大括符、圆括符和方括符。

 

版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
管理员
上一篇:EF Linq查找所有子节点或者所有父节点
下一篇:关于RazorEngine研究过程中的记录
评论列表

发表评论

评论内容
昵称:
关联文章

什么编程字体等宽字体
扫盲篇-什么分布式任务调度
免费可商用字体有哪些?
Blazor春天还寒风里挣扎
Blazor春天还寒风里挣扎
面试官:如果存取IP地址,用什么数据类型比较 (C#版本)
.NET Core 实现动态代理做AOP(面向切面编程)
日志级别选择:Debug、Info、Warn、Error还Fatal
白象食品怎么样一个企业
有限在线用户场景中,前后端分离多此一举
TinyMCE自定义字体大小列表
当CDN服务不可用时,前端有什么解决办法
C# 在PDF文档中应用多种不同字体
C# Socket网络编程 系列课程
C#获得当前日期一年中第几周
思源字体下载地址
C# .net WEB判断当前环境是否调试
CSharp编程小技巧-使用枚举 Enum.HasFlag 方法
async & await 前世今生
1.面向连接传输协议:TCP

联系我们
联系电话:15090125178(微信同号)
电子邮箱:garson_zhang@163.com
站长微信二维码
微信二维码