【问题标题】:Contradiction between typeface scale and page scale字体比例和页面比例之间的矛盾
【发布时间】:2015-03-22 13:36:03
【问题描述】:

根据 Xerox 的说法,字体“Courier 是一种 10 号字体,每英寸可以打印 12 个字符。”给定一个宽度为 5.5,每行 65 个字符的默认页面。

可以快速验证 12 pt Courier 和许多其他 12 pt 字体在 9 英寸高的每个默认页面上适合 46 或 47 行。

考虑一列的字符宽度。对于等宽的 12 pt 字体,通常每行有 60 个字符。给定 46 行,列与行的比例,或字符间距的高宽比为 18:11。

然而,对于等宽或任何字形使用的总空间,没有任何地方建议使用此比率或任何类似的比率。这是因为“每英寸 72 分”条款。

如果每英寸有 72 个点,则 9 英寸有 648 个点,或者 46 行中的每一行有 14 个点。

同样,在 5.5 宽的文档页面中有 396 个点。如果适合 60 个 12 pt 字符,则每个字符都是... 6.6 pts 宽!此外,14 与 6.6 的比率为 2.12。哎呀!

不同字体等之间的差异可能会导致一些差异。 6.6 到 12 还不止于此。

这可以解释一下吗?

【问题讨论】:

  • 这与python语言、c++语言或android平台无关。将标签更改为更相关的内容,例如“字体”。语言以 ASCII 文本指定,而不是指定字体。
  • 如果是 10 pt。字体为每英寸 12 个字符,12 pt。字体为每英寸 10 个字符。您的 5.5 英寸列只能容纳 55 个字符,而不是 60 个。现在您的问题到底是什么?我所知道的任何字体都没有方形字符,也许东方除外。
  • 我会在另一个论坛发帖。但是逻辑涉及嵌套,这与 C++(和其他程序)相关。文档处理器行使用统一作为度量。在这种情况下 1 是什么?字形嵌套在行中,决定额外间距的是行对象。是的,12 磅、10 间距(不是 10 磅)等宽字体被指定为每英寸 10 个字符。这在整个网络上都在重复。相同的规格提到 72 点等于一英寸。但这两个陈述相互矛盾,用简单的数学计算。 72人只有6组,每组12人,身高问题更严重。
  • 文档处理器是树形结构。布局模块确定行的最大或精确高度。字形在之后处理,并流入布局行。我的困惑是,“点”的概念似乎没有意义,只是在行分支中用作方便的叶子组织者。然而事实并非如此。如果等宽字体每 9 英寸产生 46 行字形,则每行高 0.196 英寸,或每英寸 5.11 行。如果每英寸有 72 个点,每行高 0.196 英寸,那么每英寸也有 5.11 个点。

标签: vba user-interface parsing fonts


【解决方案1】:

关于字体点大小有两点需要了解。首先,它只指定字体的height,而不是宽度。当您考虑到非等宽字体的每个字符的宽度会有所不同时,这一点应该很明显。其次,磅值仅指定字符单元格的高度,而不是行间距——两者之间的关系完全由字体设计者决定,通常可以在软件中覆盖。就此而言,字符单元中字符本身的大小也由字体设计者决定,并且在具有相同点大小的两种字体之间可能会有很大差异。

例如,在我的 Microsoft Word 副本中,默认页面为 8.5x11,边距为 1 英寸,留下 6.5x9 英寸或 468x648 磅的可打印空间。我已经将我的段落设置为单行间距,没有前后填充。如果我使用 Courier New 12 点字体,每个字符应该是 7.2x12 点,意味着每页 65x54 个字符。实际容量为 64x47 个字符。这意味着宽度接近 7.3 磅,行高超过 12 磅,大约为 13.7 磅。

如果我将段落行距设置为 12 磅,我会得到 54 行,如预期的那样。

如果我切换到另一种等宽字体 Consolas,则容量将变为 70x46。 Consolas 的设计者认为它可以比 Courier 更窄但更高,但点大小相同。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-10
    • 2023-04-01
    相关资源
    最近更新 更多