zoukankan      html  css  js  c++  java
  • 程序员常用字体(vs2008字体修改方案)

    字体不仅是设计师手中重要的武器,对我们开发人员来说,字体的选择也有许多讲究,一个好的、适合展示代码的字体,应该具备以下要素:

    • 等宽的字符
    • 简洁、清晰并且规范的字符形状
    • 支持ASCII码为128以上的扩展字符集
    • 与字符同等宽度的空格
    • 易于分辨的小写字母l、大写字母I、数字1和符号|
    • 易于分辨的大写字母O和数字0
    • 易于分辨的前引号和后引号,最好能够前后对称
    • 易于分辨的其他标点符号,尤其是大括号、中括号、小括号和尖括号
    • 良好的中文支持和显示

    下图展示了一个极端的反例,虽然很有个性,但并不适合用来显示代码。它的大写字母大的可怕,小写字母却小的可怜;字符不仅不清晰,而且不规范;小写字母l、大写字母I、数字1和符号| 难以分辨;大写字母O和数字0难以分辨;标点符号还凑合,只是下划线为什么是断开的?

    image

    当然,这个反例的确有些夸张,但其上文所列举的条件是比较苛刻的,我们在选择字体时没有必要非要完全满足所有条件,事实上这种字体也是凤毛麟角。下文所分享的一些字体也并没有完全满足所有条件,我们发现,只要满足了其中一些关键条件,用来显示代码就已经很不错了。

    在Visual Studio中,更改编辑器的字体是件简单的事情,选择菜单【工具】【选项】,在弹出的“选项”对话框中依次选择“环境”和“字体和颜色”,然后在“显示其设置”中选择“文本编辑器”,最后在“字体”中选择字体就可以了,如下图所示:

    image

    在上图中,我们发现Visual Studio已经将等宽字体用粗体标识了出来,这样做是为了让我们更容易找到等宽的字体,并不表示等宽字体就一定适合显示代码,比如下图所示的“新宋体”就是一个反例:

    image

    在新宋体中,数字0之比大写字母O瘦那么一点点,小写字母l和数字1也十分相像,幸亏配色方案能够颜色将它们区别开来,否则实在难以分辨。这也从另一个角度说明了配色方案与字体是相辅相成的,搭配恰当时,会让代码更加清晰易辨。

    下面就和大家分享一些在编程界声名烜赫的字体,截图所采用的配色方案为HumaneStudio,展示顺序为字体首字母升序。这些字体可能乍一看都一样,但仔细品味,还是能够发现不同的味道,希望大家都能找到适合自己的字体。

    Andale Mono,演示字号为14,猛击这里下载

    image

    Anonymous Pro,演示字号为14,猛击这里下载

    image

    Bitstream Vera Sans Mono,演示字号为14,猛击这里下载

    image

    Consolas,演示字号为14,Windows或Visual Studio已内置:

    image

    Courier New,演示字号为14,Windows已内置:

    image

    DejaVu Sans Mono,演示字号为14,猛击这里下载

    image

    Envy Code R,演示字号为16,猛击这里下载

    image

    Inconsolata,演示字号为16,猛击这里下载

    image

    Monaco,演示字号为12,猛击这里下载

    image

    Monofur,演示字号为16,猛击这里下载

    image

    Progmata,演示字号为14,猛击这里下载

    image

    Share TechMono,演示字号为16,猛击这里下载

    注:此字体似乎会将连在一起的fl显示为一个点,不建议使用,可惜可惜。

    image

    尾注:

    • 本文所分享的字体均支持ClearType。
    • 从评论来看,中文的显示的确是一个影响美观的重要因素,所以产生了许多微软雅黑和一些优秀英文字体的混合版,但其实还有一种方法可以快速而简单的实现用不同的字体显示中英文(感谢DiryBoy提醒),方法如下:
      • 用文本编辑器打开%AppData%MicrosoftVisualStudio9.0VsFontLk.dat;
      • 将0804一行修改为需要的中文字体,格式为“0804|中文字体名称”,比如“0804|微软雅黑”;

    引用:http://www.cppblog.com/Hero/archive/2009/11/25/101900.html

  • 相关阅读:
    利用libxml2解析xml文档
    找出两个链表的第一个公共结点
    [转载]风雨20年:我所积累的20条编程经验
    inotify监测文件及文件夹
    [转载]linux下svn常用指令
    利用zlib进行数据压缩
    2013腾讯编程马拉松初赛:郑厂长系列故事——体检
    Socket编程之简单介绍
    C语言中static的作用总结
    写程序实现wireshark的抓包功能
  • 原文地址:https://www.cnblogs.com/aabbcc/p/10653204.html
Copyright © 2011-2022 走看看