
我使用FontForge创建了这个仅向量的TrueType字体.我想在需要基于矢量的字形的应用程序上使用此字体,并且不支持加载.ttf嵌入式位图(似乎没有此问题).
在某些颜色方案中,Windows执行此子像素渲染会使字体完全无法读取.大多数ttf字体都会出现这种效果,但对于像我这样的像素完美边缘的字体来说效果要强得多.
有没有人知道任何可编程的提示技巧或字体设置,允许字体呈现像素完美而不是这个红色/蓝色光环?我希望字体在没有操作系统修改的情况下正常工作以禁用ClearType或类似功能.
为了澄清,这是一个关于利用TrueType指令集,或者更改我可能忽略设置的TrueType字体设置(不是系统/应用程序设置)的问题,以使字体呈现清晰(如果可能).
结构中的匿名结构中的Brace-or-equal-initializers不会对VS2013生成的输出执行任何操作.有代码:
#include <iostream>
#include <cstdint>
struct S
{
struct
{
uint64_t val = 0;
}anon;
};
int main()
{
S s;
S *a = new S;
std::cout << s.anon.val << std::endl;
std::cout << a->anon.val << std::endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
在Linux上使用此命令编译:
g++ -std=c++11 def-init-anon-atruct.cpp -o def-init-anon-atruct
Run Code Online (Sandbox Code Playgroud)
(添加优化标志不会影响结果)
预期结果:
0
0
Run Code Online (Sandbox Code Playgroud)
奇怪的.使用VS2013运行它会产生垃圾值.在实施C++ 11标准方面,谁在这方面是正确的?我非常怀疑这是海湾合作委员会的错.
是否与一些无用的VS编译器选项有关?Windows扩展?由于MS制造的错误,我必须为结构制作默认构造函数?这很荒谬.
member-initialization c++11 anonymous-struct visual-c++-2013