问题标签 [font-rendering]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2995 浏览

visual-studio-code - 如何使 VSCode for MacOS 中的字体渲染看起来与 VSCode for Windows 完全相同?

这个问题有点反了。

我不喜欢 VSCode for Mac 中字体的呈现方式。对我来说,缺乏对比度会妨碍我,因为我的视力不好,字母会因为缺乏对比度而有点乱。我可以缩放,但我失去了很多工作空间(MacBook Air 的屏幕很小)。

我切换到 VSCode for Windows (Consolas) 中使用的字体,但它仍然变得模糊。

MacOS系统General > Font smoothing没有任何区别。

有什么方法可以使 VSCode for Mac 中的字体渲染看起来与 VSCode for Windows 完全相同?

适用于 Windows 的 VS Code(非常好,打印从 VM 连接到 Windows 机器) 在此处输入图像描述

带有字体抗锯齿 ( ) 的 VS Code for Mac "workbench.fontAliasing": "antialiased"(不那么生动和模糊) 在此处输入图像描述

VS Code for Mac 没有字体抗锯齿 ( "workbench.fontAliasing": "none") (更有活力和对比,但看起来真的很糟糕) 在此处输入图像描述

0 投票
0 回答
50 浏览

visual-studio-code - VSCode 终端电力线字体无符号

我似乎无法让符号在 vscode 终端中工作。请帮忙。我正在使用 Pop!_OS 21.04。

字体设置为 Menlo

0 投票
1 回答
64 浏览

rust - Rusttype 如何垂直定位字形

我正在尝试使用rusttype crate 来呈现文本。到目前为止,这太棒了,但是当我试图正确定位单个字形时,我遇到了障碍。

我通过将每个字形渲染为RgbaImage(从图像箱,如rusttype 图像示例中)并将其渲染为四边形网格来渲染文本。

但是,如果没有计算vertical_offset,我会收到以下文本:

这个单词

如您所见,角色无处不在。

我需要考虑字体ascentdescent大小。但是,这是我遇到问题的地方。

ascent我可以使用以下计算来补偿:

然后将四边形网格向下移动offset_y.

当文本中没有像“g”这样的下降器时,这会改善输出:

在此处输入图像描述

但在涉及降序字符时无济于事:

在此处输入图像描述

我无法弄清楚这些rusttype例子是如何处理这个问题的。他们使用Font::layoutmethod,但这没有任何特殊的垂直对齐代码。

我肯定做错了什么。请帮忙!

0 投票
0 回答
54 浏览

java - Java 15 - 向我的画布添加可自定义文本会产生缩放/位置问题

我跳回了一堆旧代码,我的 Java 非常粗糙。请善待。

问题:我有一个在画布上绘图的应用程序。屏幕对象的放置效果很好。甚至附加到其他对象的文本。但是,当我在画布上放置一个文本对象时,画布的比例减半。我已经折腾了几个月,似乎找不到解决办法。任何意见将是有益的。

下面是使用其他绘图方法在 Visualise2D 类中在屏幕上绘制文本的代码。所有其他对象都使用相同的比例等。这只发生在我升级到 Java 15 之后,我使用的最后一个 java 是 java 8,它运行良好。

下面是描述该问题的两张图片。
图 1 是正常比例的正常视图 图 2 是添加文本后的更改比例。

如果文本被删除,比例将返回到第一个图像。

正常比例:

https://i.stack.imgur.com/FjfPe.jpg

添加了文本比例更改:

https://i.stack.imgur.com/Dh1RK.jpg

0 投票
0 回答
14 浏览

google-docs - 为什么 Chrome/Firefox 会在 Google Docs 中为 Source Sans Pro 错误地呈现字符(但 Safari 不会)?

我在 Google Docs 中安装了 Source Sans Pro 作为自定义字体。当我使用 Chrome 或 Firefox 时,文档、电子表格或演示文稿中使用的这种字体(SSP Normal)的文本似乎以不同的语言或字符集呈现,而 Safari 则按预期呈现文本。从 Chrome/Firefox 下载的 PDF 中的文本是正确的。

有谁知道如何解决这一问题?请注意,这只影响 Source Sans Pro Normal,字体的其他变体(例如 Light、Semi-Bold)正确渲染。

谢谢!

Chrome 和 Firefox 中的字符呈现不正确,而不是 Safari

0 投票
2 回答
29 浏览

fonts - 为什么我的 Google 字体大写字母显示太浅?

在本网站使用谷歌字体,一些大写字母与小写相比太轻(假装)。请参阅此处的文字:

https://katherinesolomon.com/farm-animals/

这个问题似乎对窄大写字母的影响大于对宽字母的影响。系统字体(如 arial)不显示此问题。

目前该网站使用的是谷歌字体“Dosis”。我尝试用其他 Google sans-serif 字体替换,但这并不能解决问题;其他选择显示了同样的问题。我尝试过替换不同的字体粗细,但这也无济于事。

无论浏览器或设备如何,这似乎都会发生。

任何人都可以找出问题和解决方案吗?

0 投票
0 回答
18 浏览

c - 如何在 freetype 中使用 FT_RENDER_MODE_SDF?

我对字体渲染很陌生,我正在尝试使用 freetype 生成有符号距离场,以便它可以在 OpenGL 的片段着色器中使用。这是我尝试过的代码:

也许我完全误解了 SDF 的想法,但我的想法是我可以给 freetype 一个 ttf 文件,并且使用 FT_RENDER_MODE_SDF 它应该产生一个带符号距离的缓冲区。但是 FT_Render_Glyph 返回一个错误 (19),恰好是“无法呈现此字形格式”。