Coelacanthus 最近的时间轴更新
Coelacanthus

Coelacanthus

V2EX 第 552887 号会员,加入于 2021-08-09 00:46:24 +08:00
根据 Coelacanthus 的设置,主题列表只有在你登录之后才可查看
二手交易 相关的信息,包括已关闭的交易,不会被隐藏
Coelacanthus 最近回复了
2022-07-12 16:20:21 +08:00
回复了 GeruzoniAnsasu 创建的主题 C++ c++20 coroutine 实现的 generator 可以被优化成常数
常量优化自从 C++11 引入 constexpr 以来就是 C++ 的拿手好戏
2022-07-12 16:17:28 +08:00
回复了 Suigintou 创建的主题 问与答 寻求 Windows 无隐私问题,并且好用的第三方输入法
其实 Fcitx5 + libime 挺好的,可惜没人移植到 Windows
Java 还是好的,你要不要看看隔壁 C++
2022-07-12 16:15:38 +08:00
回复了 Iamsonny 创建的主题 问与答 做为程序员,你们会信任自动驾驶么?
如果路上跑的都是自动驾驶的,我信任,如果有人,我不信任
人才是自动驾驶设计中最大的变数
2022-06-01 18:48:54 +08:00
回复了 MrLonely 创建的主题 问与答 救救孩子!能正常使用的 WireGuard 突然就不通了
@MrLonely 突然又通了?那我大胆猜测下可能是被运营商 QoS 了
2022-06-01 18:47:44 +08:00
回复了 DDDRS 创建的主题 macOS Mac 有什么可用的 HDR 视频播放器吗?
MPV
在用 Thanox ,但是感觉和绿色守护还不太一样
2022-06-01 18:42:33 +08:00
回复了 starlz 创建的主题 Rust 关于初始化一个 1024*1024 的 u8 数组导致 STACK_OVERFLOW 的疑惑
关于第一个问题,你是不是 Windows ,Windows 默认用户栈只有 1M ,那肯定会炸
Linux 一般默认 8M
2022-06-01 18:39:10 +08:00
回复了 starlz 创建的主题 Rust 关于初始化一个 1024*1024 的 u8 数组导致 STACK_OVERFLOW 的疑惑
关于第二个问题,是的,Box 是先在栈上初始化然后移动到堆上,这是个已知问题
事实上不只是 autohint ,不知道是因为封装的原因还是 Chromium 对 fontconfig 的使用有问题,Chromium 的字体选择几乎不遵守你的 fontconfig 设置,导致会出现代码块字体在 Firefox 上正常但是在 Chromium 上变成非等宽字体的情况,而且这个问题存在了很多年,Google 看起来也不打算修了[1]
相反,Firefox 没有这个问题,并且 Firefox 对相关问题修复态度非常积极,我报了两个相关的 bug ,其中一个尽管是我的配置有问题,维护者依然修复了显露出来的问题,而不是 notfirefoxbug 关闭了事[2],另一个维护者积极接受了相关修复[3]
而且我读了相关代码,Firefox 的字体部分仅仅是封装了平台 API 到一个一致的 API ,没有动具体怎么处理[4]
此外既然也提到了 Qt ,Qt 的字体相关代码实现也不好,一是对 fallback 字体数量做了硬编码,也即 QTBUG-80434[5],fallback 的时候最多使用 255 个字体,如果你安装了超过这个数目的字体,就有可能有字符 fallback 不到有这个字符的字体,二是 font feature 的支持非常差,现有代码是采取的硬编码方案[6],而 Firefox 和 Pango ( GTK 在用)则是采用的变长线性表储存[7],且支持从 fontconfig 配置中读取 font feature 配置(当然,Firefox 也支持从 CSS 读取)[8][9],而 Qt 的 feature request 开了三年了[10],没人管

相关链接:
[1]: https://catcat.cc/post/2020-10-31/#chrome
[2]: https://bugzilla.mozilla.org/show_bug.cgi?id=1756400
[3]: https://bugzilla.mozilla.org/show_bug.cgi?id=1744765
[4]: https://github.com/mozilla/gecko-dev/tree/master/gfx/thebes
[5]: https://bugreports.qt.io/browse/QTBUG-80434
[6]: https://github.com/qt/qtbase/blob/a1fb3971f222afa01583e41f4d8f0e037d2c7892/src/gui/text/qtextengine.cpp#L1687-L1705
[7]: https://github.com/mozilla/gecko-dev/blob/a3ee6a0ee95a1095ce496b5adc07738a7eddc7c0/gfx/thebes/gfxFontEntry.h#L496
[8]: https://github.com/mozilla/gecko-dev/blob/a3ee6a0ee95a1095ce496b5adc07738a7eddc7c0/gfx/thebes/gfxFcPlatformFontList.cpp#L258
[9]: https://gitlab.gnome.org/GNOME/pango/-/blob/a553ba64c43c13e37d54f1fb20a656ffb2ef067/pango/pangofc-font.c#L860
[10]: https://bugreports.qt.io/browse/QTBUG-78645
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   948 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 12ms · UTC 20:03 · PVG 04:03 · LAX 13:03 · JFK 16:03
Developed with CodeLauncher
♥ Do have faith in what you're doing.